Hình 3 .1 Thay khóa theo đợt, theo chu kỳ, ngay tức thời
Hình 3.4 Một ví dụ về cây khóa
Tương ứng với mỗi thành viên chúng ta có các nút khóa ở lá Ka; Kb; . . . ; Kh. Bây giờ chúng ta kiểm tra xem sự phân chia khóa theo hình vẽ các luật đưa ra rõ ràng hơn. A nhận các khóa Ka; Kab; Ka.d; Ka.h, tương ứng với các nút trong đường dẫn tới gốc. GCKS gửi Ka.d tới tất cả các nút bên dưới A, B, C và D. Tất cả các thành viên nhận được khóa nhóm Ka.h.
3.3.1 Khởi tạo LKH:
Chúng ta thiết lập LHK như sau:
Đầu tiên GCKS tạo một cây khóa nhị phân với một nút gốc tiếp theo là các nút lá có các thành viên.
Bước tiếp theo nó chia sẻ riêng biệt, khóa bí mật duy nhất với mỗi thành viên của nhóm. Có các nút lá là các khóa. GCKS khi đó sinh ra các khóa tương ứng tới mỗi nút trong và phân phối mỗi nút trong khóa được bảo mật với mỗi khóa của nút con của nó.
Mỗi khóa nút trong được bảo mật với 2 khóa khác nhau và gửi tới nhóm. Về tổng thể GCKS gửi n – 1 khóa (các thành viên không phải nút lá trong toàn bộ cây) tới nhóm có n thành viên. Hình 3.5 minh họa khởi tạo LKH.
Có một cách khác để khởi tạo cây khóa. Cần nhắc lại rằng GCKS cần gửi tới mỗi thành viên tất cả các khóa trong đường dẫn tới gốc. Theo luật này GCKS chỉ gửi riêng tới mỗi thành viên nút trong các khóa nó cần gửi và được bảo mật với các khóa là duy nhất tạo các nút lá của các thành viên. Nhìn chung GCKS cần gửi O(nlogn) các khóa mã hoá và theo cách tiếp cận này thì kém hiệu quả so với miêu tả phần trước.
3.3.2 Thêm thành viên tham gia cây khóa.
Khi một thành viên tham gia nhóm, GCKS cần thêm thành viên tới cây khóa. Có 1 cặp kịch bản khác nhau.
Đầu tiên chúng ta để trống sẵn cho việc thêm thành viên mới.
Kịch bản thứ 2 chúng ta để cây dạng cân bằng và không có chỗ trống. Chúng ta có thể tạo chỗ trống trong cây khóa bằng cách phân đôi các nút. Nút phân đôi tạo ra một hoặc nhiều chỗ trống, xem cụ thể [1]. GCKS có thể chọn nút gốc, một nút lá hoặc một nút trong để thực hiện phân đôi, phụ thuộc vào làm thế nào để tạo nút trống nó muốn tạo. Chẳng hạn, phân đôi một nút lá tạo ra một nút trống, phân đôi một nút gốc tạo ra dự phòng cho rất nhiều thành viên muốn tham gia vào các nút hiện thời.