2013-12-10 12 views
5

Nếu bạn thực hiện chuỗi 32 bit và thực hiện CRC32 trên đó, bạn sẽ nhận được một chuỗi 32 bit khác làm kết quả; nếu bạn làm CRC32 này, bạn sẽ nhận được một cái khác, và cứ thế. Nó rất dễ dàng để cho thấy rằng nếu bạn tiếp tục làm điều này, bạn kết thúc với một vòng lặp của 2^32 bit chuỗi, trước khi bắt đầu lại.Chuyến đi khứ hồi SHA256

Câu hỏi đơn giản: có ai biết nếu điều tương tự có đúng (hoặc không) cho SHA256, bắt đầu bằng chuỗi 256 bit không? Một chu trình quá trình tương tự có thể lặp đi lặp lại thông qua một chuỗi các chuỗi 256-bit có khả năng 2-bit 256 trước khi bắt đầu lại không? Hoặc có các vòng lặp ngắn hơn (hoặc có thể) đã biết trong băm này không?

Brian

Trả lời

2

SHA256 chưa được thiết kế để đáp ứng thuộc tính của vòng lặp 2^256. Tuy nhiên, theo như tôi biết, không ai đã chứng minh rằng không có vòng lặp như vậy. Ngoài ra, không có bất kỳ vòng lặp nào ngắn hơn bởi vì nếu ai đó tìm thấy một số, thì anh ta cũng sẽ tìm thấy một va chạm và từ bản chất của hàm băm mật mã, nó sẽ rất khó khăn.

Vì vậy, vì không ai chưa chứng minh điều đó, có, có khả năng chu kỳ 2^256 sẽ tồn tại. Tuy nhiên, rất khó có khả năng tôi sẽ đặt cược tinh hoàn trái của tôi cho nó. :-)

Hãy để tôi cũng lưu ý rằng, IMO để thiết kế hàm băm mật mã có vòng lặp 2^256 sẽ cực kỳ khó khăn ngay cả đối với các chuyên gia mật mã tốt nhất.

Các vấn đề liên quan