Thuật toỏn GOST lặp lại cấu trỳc tổng thể của DES. Rừ ràng là những người thiết kế nú đó cố gắng để đạt được sự cõn bằng giữa tớnh hiệu quả của thuật toỏn và độ mật của nú. Nú sử dụng cỏc khối được xõy dựng thường lệ và đơn giản.
Đặc biệt, GOST khỏc DES ở những điểm sau:
1. Lịch trỡnh khúa phức tạp được bỏ qua và thay bằng dóy cú qui tắc của cỏc khúa thành phần.
2. Khúa mật mó cú độ dài đến 256 bit so với 56 bit của DES. Hơn nữa, lượng thực tế của thụng tin mật trong hệ thống, bao gồm cả cỏc S-box, gộp lại xấp xỉ 610 bit thụng tin.
3. 8 hộp S-box S1, ..., S8 là cỏc hoỏn vị Si: GF(24) → GF(24), về tổng thể chỉ đũi hỏi khụng gian lưu trữ tương đương với 2 S-box của DES.
4. Khúa con cho mỗi vũng lặp là 32-bit cho một phộp cộng cú nhớ chứ khụng phải là phộp XOR 48-bit như trong DES.
5. Phộp hoỏn vị khối bất qui tắc P trong DES được thay bởi thanh ghi dịch
đơn giản R, nú quay nội dung đi 11 bit về bờn trỏi sau mỗi vũng. 6. Số vũng được tăng từ 16 lờn 32.
Do độ mật của thuật toỏn phụ thuộc cả vào khúa mật mó và 8 phộp thế Si, i=1,..,8, nờn người sử dụng cần phải biết nờn chọn 2 thành phần bớ mật này như thế
nào? Khúa mật mó cú thể chọn ngẫu nhiờn, nhưng việc chọn cỏc húan vị Si được dành cho người cú chức trỏch, người biết chọn những hoỏn vị tốt. Từ quan điểm của người sử dụng, độ mật được liờn quan tới tớnh bảo mật của khúa K. Chỳ ý rằng người cú trỏch nhiệm cú thể chọn cỏc S-box sao cho họ cú thể phỏ được hệ mật (vớ dụ, bằng cỏch chọn cỏc hoỏn vị tuyến tớnh hay affine).
Chỳng ta hóy xem xột cấu trỳc của thuật toỏn GOST, bạn cú thể hỏi xem phải chăng việc sử dụng cỏc hoỏn vị thay cho một lớp lớn hơn nhiều tất cả cỏc hàm số cú thể làm giảm độ an toàn? Even và Goldreich [1] đó chứng minh rằng một phộp mó kiểu DES bất kỳ với một phộp lặp
L’=R R’=L⊕f(R)
sinh ra một nhúm luõn phiờn (alternating group) với f:GF(232) → GF(232) là hàm Boolean, đầu vào là (L, R), cũn đầu ra là (L’, R’). Sau đú Pieprzyk và Zhang [3]
đó chỉ ra rằng nếu f là hoỏn vị thỡ hàm mó kiểu DES vẫn sinh ra nhúm luõn phiờn. Như vậy, việc sử dụng cỏc hoỏn vị thay cho cỏc hàm khụng làm suy giảm độ mật của thuật toỏn khi xem xột với một số vũng lớn.
Việc kết nối của CM1, cỏc S-box và phộp dịch vũng R cú thể xem như hàm vũng F. Hàm F ỏnh xạ chuỗi đầu vào 32-bit vào chuỗi đầu ra cú cựng độ dài, đối tượng bị kiểm soỏt bởi khúa 32-bit. Phần trung tõm của hàm F là 8 S-box kớch thước 4*4. Trước hết, hàm F thực hiện việc chia chuỗi đầu vào 32-bit thành 8 khối, mỗi khối 4 bit, và sau đú thay mỗi khối bằng 4 bit được định ra bởi S-box tương ứng.
Bạn cú thể thấy cỏc bit ra của hàm F bịảnh hưởng bởi cỏc tổ hợp khỏc nhau của đầu vào phụ thuộc vào vị trớ của nú. Điều này được giải thớch bởi tớnh chất của việc kết nối phộp cộng modulo 232 và cỏc S-box. Phộp cộng modulo 232 tạo đầu ra là phi tuyến tất cả ( trừ một trường hợp- bit ra cú nghĩa nhỏ nhất). Điều này dẫn chỳng ta tới bổđề.
Bổđề 1. Cỏc đầu ra của Si bịảnh hưởng bởi 4i bit của bản rừ từ thanh ghi R1 và 4i bit của khúa thành phần (i=1,...,8).
Vị trớ của S1 làm cho nú đặc biệt dễ bị tổn thương đối với tấn cụng tuyến tớnh. Hoỏn vị S1 được chọn cẩn thận nhất sao cho đầu ra của S1 cú độ phi tuyến tối
đa. Nếu quan tõm đến hàm F thỡ GOST hoàn toàn sỏnh được với DES vỡ nú cú quan hệ giữa đầu vào/đầu ra phức tạp hơn.
Một vấn đề hết sức thỳ vị là việc chọn cỏc S-box sao cho nú cú tớnh phi tuyến cao. Núi chung, phộp cộng làm tăng tớnh tuyến tớnh, nhưng cũng cú trường hợp nú làm suy giảm độ phi tuyến của hàm F đến mức kộm hơn độ phi tuyến của chớnh cỏc S-box.