题解 | 哈希冲突

哈希冲突

https://www.nowcoder.com/practice/37594c5b299e495096a99cf6e4cdf2f5

import hashlib
import random


def sha256(text: str) -> str:
    return hashlib.sha256(text.encode()).hexdigest()


enc_len = 0
enc_key = ""


def H(s):
    combined = enc_key + s
    return sha256(combined)[:enc_len]


def solve():
    a={}
    while True:
        s=''.join(random.choice('abcdefghijklmnopqrstuvwxyz') for i in range(enc_len))
        h=H(s)
        if h not in a:
            a[h]=s
        else:
            if s!=a[h]:
                return(s,a[h])
                break
        
enc_len=int(input())
enc_key=input()
c=solve()
print(c[0],c[1])    

        
# 在此处补全代码
# return ("", "")


    

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务