Điểm:0

Một truy vấn liên quan đến Thuật toán SHA256

lá cờ br

Tôi đang cố viết mã SHA256 từ đầu để hiểu cách triển khai của nó dựa trên mã giả wiki đủ rõ ràng. Nhưng tôi đang gặp vấn đề với việc tính toán W[i] cho khối đầu tiên. Tôi chắc chắn rằng tôi đang thiếu logic ở đâu đó. Đưa ra một chuỗi dữ liệu có kích thước 80 Byte (ở dạng Hex): "0200000000AAF8AB823623444F49083EC"

Sau khi đệm, kết quả là chuỗi dữ liệu 128 Byte (ở dạng Hex): "02000000aaf8ab82362344f49083ee4edef795362cf135293564c4070000000000000000c009bb6222e9bc4cdb8f26b2e8a2f8d163509691a4038fa692abf9a474c9b21476800755c02e17181fe6c1c3800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000280"

Bây giờ phần này được chia thành 2 phần 64 Byte mỗi phần: "02000000aaf8ab82362344f49083ee4edef795362cf135293564c4070000000000000000c009bb6222e9bc4cdb8f26b2e8a2f8d163509691a4038fa692abf9a4"

"74c9b21476800755c02e17181fe6c1c38000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000280"

Bây giờ khi chúng tôi bắt đầu xử lý đoạn đầu tiên, làm cách nào để điền vào mảng lịch trình thông báo 64 mục nhập w[0..63] gồm các từ 32 bit. Wiki nói: "(Các giá trị ban đầu trong w[0..63] không thành vấn đề, rất nhiều triển khai không có chúng ở đây)" sao chép đoạn vào 16 từ đầu tiên w[0..15] của mảng lịch trình thông báo

Vì vậy, tôi cố gắng điền vào mảng lịch trình tin nhắn như sau:

W[0]=0200

W[1]=0000

W[2]=aaf8

W[3]=ab82

W[4]=3623 và cứ thế cho đến W[15].

Các giá trị W[16] đến W[63] đều được đặt thành 0.

Nhưng những giá trị này có vẻ không chính xác. Tôi làm gì sai ở đây. Ai đó có thể vui lòng chỉ ra những gì là sai ở đây?

Điểm:3
lá cờ my

W[0]=0200

Đây là vấn đề của bạn - với SHA-256, mỗi từ là 32 bit, không phải 16.

Vì vậy, đây phải là:

W[0] = 02000000 
W[1] = aaf8ab82
W[2] = 362344f4

vân vâ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.