Điểm:0

Cách tạo khóa từ 56 bit bằng DES

lá cờ ru

Đầu tiên tôi chỉ muốn xin lỗi vì sự thiếu hiểu biết của tôi trong hệ thống này.

Giáo sư đã cho chúng tôi một bài tập để giải trước khi học qua các bài học. Tôi mệt mỏi khi xem video trực tuyến nhưng những gì tôi chỉ biết cách sử dụng khóa ban đầu 64 bit.

khóa thập lục phân 56 bit ban đầu: 'B092EBA02E3798' Cung cấp khóa K16 (ở lượt cuối cùng) thành 64 bit ở dạng thập lục phân.

Vì vậy, câu hỏi của tôi là, tôi có phải chuyển 56 bit thành 64 bit trước khi thực hiện hoán vị ban đầu không. Và nếu có làm thế nào tôi có thể làm điều đó. Cảm ơn sự giúp đỡ của bạn.

kelalaka avatar
lá cờ in
Chào mừng bạn đến với Cryptography.SE. Wikipedia là bước đầu tiên!. Tuy nhiên, chúng tôi có một số câu hỏi/đáp về vấn đề này, hãy xem trên [Wiki:DES](https://en.wikipedia.org/wiki/Data_Encryption_Standard#Description) Khóa có vẻ bao gồm 64 bit; tuy nhiên, chỉ có 56 trong số này thực sự được sử dụng bởi thuật toán. Tám bit chỉ được sử dụng để kiểm tra tính chẵn lẻ và sau đó bị loại bỏ. Do đó độ dài khóa hiệu quả là 56 bit.
kelalaka avatar
lá cờ in
Điều này có trả lời câu hỏi của bạn không? [DES bit chẵn lẻ](https://crypto.stackexchange.com/questions/70736/des-parity-bits)
Điểm:3
lá cờ in

Khóa DES được định nghĩa là 64 bit. 56 trong số đó là khóa thực tế và 8 là bit chẵn lẻ. Điều này cho phép nó phù hợp với 8 byte.

K16 có lẽ đề cập đến khóa phụ cuối cùng, theo lịch trình khóa. Mỗi khóa phụ DES dài 48 bit. nhập mô tả hình ảnh ở đây

Việc mã hóa khóa 56 bit thành 64 bit được thực hiện bằng cách thêm một bit chẵn lẻ vào mỗi byte 7 bit. Tuy nhiên, tôi biết không có cách tiêu chuẩn nào để biểu diễn khóa phụ 48 bit thành 64 bit.

Hakim Cheheb avatar
lá cờ ru
Cảm ơn bạn rất nhiều vì sự giúp đỡ của bạn. Tôi đoán tôi sẽ cố gắng giải bài tập bằng khóa 48 bit.
Điểm:1
lá cờ cn

Có thể không có đủ thông tin về vị trí khóa 56 bit của bạn được tìm thấy trong thuật toán.

Nếu giá trị 56 bit B092EBA02E3798 đại diện cho khối CD sau PC1 bàn phím -s bảng hiển thị khóa đã chọn K16 là kết quả của việc áp dụng PC2 cho khối CD:

  Bit 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
KS
   1 15 18 12 25 2 6 4 1 16 7 22 11 24 20 13 5 27 9 17 8 28 21 14 3
   2 16 19 13 26 3 7 5 2 17 8 23 12 25 21 14 6 28 10 18 9 1 22 15 4
   3 18 21 15 28 5 9 7 4 19 10 25 14 27 23 16 8 2 12 20 11 3 24 17 6
   4 20 23 17 2 7 11 9 6 21 12 27 16 1 25 18 10 4 14 22 13 5 26 19 8
   5 22 25 19 4 9 13 11 8 23 14 1 18 3 27 20 12 6 16 24 15 7 28 21 10
   6 24 27 21 6 11 15 13 10 25 16 3 20 5 1 22 14 8 18 26 17 9 2 23 12
   7 26 1 23 8 13 17 15 12 27 18 5 22 7 3 24 16 10 20 28 19 11 4 25 14
   8 28 3 25 10 15 19 17 14 1 20 7 24 9 5 26 18 12 22 2 21 13 6 27 16
   9 1 4 26 11 16 20 18 15 2 21 8 25 10 6 27 19 13 23 3 22 14 7 28 17
  10 3 6 28 13 18 22 20 17 4 23 10 27 12 8 1 21 15 25 5 24 16 9 2 19
  11 5 8 2 15 20 24 22 19 6 25 12 1 14 10 3 23 17 27 7 26 18 11 4 21
  12 7 10 4 17 22 26 24 21 8 27 14 3 16 12 5 25 19 1 9 28 20 13 6 23
  13 9 12 6 19 24 28 26 23 10 1 16 5 18 14 7 27 21 3 11 2 22 15 8 25
  14 11 14 8 21 26 2 28 25 12 3 18 7 20 16 9 1 23 5 13 4 24 17 10 27
  15 13 16 10 23 28 4 2 27 14 5 20 9 22 18 11 3 25 7 15 6 26 19 12 1
  16 14 17 11 24 1 5 3 28 15 6 21 10 23 19 12 4 26 8 16 7 27 20 13 2

  Bit 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
KS
   1 42 53 32 38 48 56 31 41 52 46 34 49 45 50 40 29 35 54 47 43 51 37 30 33
   2 43 54 33 39 49 29 32 42 53 47 35 50 46 51 41 30 36 55 48 44 52 38 31 34
   3 45 56 35 41 51 31 34 44 55 49 37 52 48 53 43 32 38 29 50 46 54 40 33 36
   4 47 30 37 43 53 33 36 46 29 51 39 54 50 55 45 34 40 31 52 48 56 42 35 38
   5 49 32 39 45 55 35 38 48 31 53 41 56 52 29 47 36 42 33 54 50 30 44 37 40
   6 51 34 41 47 29 37 40 50 33 55 43 30 54 31 49 38 44 35 56 52 32 46 39 42
   7 53 36 43 49 31 39 42 52 35 29 45 32 56 33 51 40 46 37 30 54 34 48 41 44
   8 55 38 45 51 33 41 44 54 37 31 47 34 30 35 53 42 48 39 32 56 36 50 43 46
   9 56 39 46 52 34 42 45 55 38 32 48 35 31 36 54 43 49 40 33 29 37 51 44 47
  10 30 41 48 54 36 44 47 29 40 34 50 37 33 38 56 45 51 42 35 31 39 53 46 49
  11 32 43 50 56 38 46 49 31 42 36 52 39 35 40 30 47 53 44 37 33 41 55 48 51
  12 34 45 52 30 40 48 51 33 44 38 54 41 37 42 32 49 55 46 39 35 43 29 50 53
  13 36 47 54 32 42 50 53 35 46 40 56 43 39 44 34 51 29 48 41 37 45 31 52 55
  14 38 49 56 34 44 52 55 37 48 42 30 45 41 46 36 53 31 50 43 39 47 33 54 29
  15 40 51 30 36 46 54 29 39 50 44 32 47 43 48 38 55 33 52 45 41 49 35 56 31
  16 41 52 31 37 47 55 30 40 51 45 33 48 44 49 39 56 34 53 46 42 50 36 29 32

trong đó các bit 1 đến 24 được lấy từ thanh ghi C và các bit 25 đến 56 được lấy từ thanh ghi D.

A C Giá trị thanh ghi của B092EBA được mở rộng là

Bit 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
Val 1 0 1 1 0 0 0 0 1 0 0 1 0 0 1 0 1 1 1 0 1 0 1 1 1 0 1 0

Áp dụng Permuted Choice 2 cho Thanh ghi C mang lại:

PC2 14 17 11 24 1 5 3 28 15 6 21 10 23 19 12 4 26 8 16 7 27 20 13 2
     0 1 0 1 1 0 1 0 1 0 1 0 1 0 1 1 0 0 0 0 1 0 0 0

hoặc 5AA5B08.

A D Giá trị thanh ghi của 02E3798 được mở rộng là

Bit 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
Giá trị 0 0 0 0 0 0 1 0 1 1 1 0 0 0 1 1 0 1 1 1 1 0 0 1 1 0 0 0

Áp dụng Permuted Choice 2 cho Thanh ghi D mang lại:

PC2 41 52 31 37 47 55 30 40 51 45 33 48 44 49 39 56 34 53 46 42 50 36 29 32
     0 1 0 1 1 0 0 0 0 0 0 1 1 1 1 0 0 1 1 0 0 0 0

hoặc 581E60.

Điều đó mang lại giá trị Khóa đã chọn là 5AA5B08581E60, đây là giá trị 48 bit. Các đầu vào chính cho f(R,K) cho 4 hộp S đầu tiên đến từ C trong khi 4 hộp cuối cùng đến từ D.

Mặt khác, nếu giá trị 56 bit B092EBA02E3798 đại diện cho các bit 1 (MS) đến 7 trên 8 (LS) của tám byte 8 bit liên tiếp của đầu vào PC1 sẽ mở rộng ra giá trị 64 bit trong đó các bit bổ sung được sử dụng cho tính chẵn lẻ nhưng bỏ qua ở đây và đặt thành 0:

                     P
1 0 1 1 0 0 0 0
0 1 0 0 1 0 0 0
1 0 1 1 1 0 1 0
0 1 1 1 0 1 0 0
0 0 0 0 0 0 1 0
0 1 1 1 0 0 0 0
1 1 0 1 1 1 1 0
0 0 1 1 0 0 0 0

hoặc B048BA740270BE30.

Giá trị này có thể được nhập vào một bản sao của Eugene Steyer's Ví dụ Javascript DES đó có thể là đã chỉnh sửa để cho phép nhập các khóa và dữ liệu tùy ý và sản xuất:

KS[16]: 011100 001110 010011 001011 100000 101000 000111 101001

đó sẽ là 70E4CB8281E9, giá trị 48 bit.

Nếu không nhìn thấy ngữ cảnh của nhiệm vụ của bạn, tôi nghi ngờ nếu phương pháp thứ hai được hiển thị ở đây là nhằm mục đích, bạn sẽ được yêu cầu hiển thị công việc của mình, điều này có nghĩa là thể hiện PC1 và PC2 cũng như đề cập đến lịch trình khóa thể hiện khóa 16 đã chọn là PC2 áp dụng cho khối CD.

Nó giúp hiểu được Tiêu chuẩn mã hóa kỹ thuật số là một tiêu chuẩn về khả năng tương tác tham chiếu đến việc triển khai phần cứng được tìm thấy trong hai bằng sáng chế DES của IBM bằng cách sử dụng bit lớn cuối thứ tự từ 1 và có giao diện 8 bit với máy chủ.

Mối quan hệ giữa các byte khóa đầu vào, PC1, PC2 và khối CD được hiển thị trong câu trả lời này sang một câu hỏi khác.

Điểm:0
lá cờ ng
SSA

Đối với người yêu cũ đây là 64 bit của bạn ${key = AABB09182736CCDD}$ bạn có thể chuyển đổi thành nhị phân và sau đó chỉ cần sắp xếp các bit được hiển thị trong mảng keyp và bạn sẽ nhận được khóa 56 bit mới. khóa mới dưới dạng bitarray được nối (bit5+bit49+bit41....+bit4), tất cả các bit còn lại đều bị loại bỏ. cho Số lượng mảng bên dưới bắt đầu từ 0

nhập mô tả hình ảnh ở đây

  • nhận khóa 56 bit từ 64 bit bằng cách sử dụng các bit chẵn lẻ phím = hoán vị (key, keyp, 56)
  • bây giờ sau lần đầu tiên hoán vị PC1 ở trên được hiển thị bởi Meir, khóa 56 bit là '0xc3c033a33f0cfa'
  • Nếu tôi hiểu chính xác câu hỏi của bạn, bạn cần tìm khóa 64 bit từ khóa 56 bit, như Meir đã đề cập là không khả thi.bạn có thể sử dụng khóa 56 bit này sau khi hoán vị ban đầu và tạo 16 khóa con 48 bit và sử dụng chúng theo thứ tự ngược lại trong khi giải mã. Vui lòng tìm Feistel Cipher, vì DES dựa trên nó.
Hakim Cheheb avatar
lá cờ ru
Cảm ơn bạn rất nhiều, tôi sẽ xem xét thêm chi tiết về Fiestel Clipher, cảm ơn bạn.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.