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 29 30 31 32
| import hashlib import string
# 获取所有键盘上的字符,包括字母、数字和常见符号 keyboard_chars = string.ascii_letters + string.digits + string.punctuation + string.whitespace
# 提供的SHA-1哈希值列表 hash_list = [ "356a192b7913b04c54574d18c28d46e6395428ab","da4b9237bacccdf19c0760cab7aec4a8359010b0","77de68daecd823babbb58edb1c8e14d7106e83bb","1b6453892473a467d07372d45eb05abc2031647a","ac3478d69a3c81fa62e60f5c3696165a4e5e6ac4","c1dfd96eea8cc2b62785275bca38ac261256e278","902ba3cda1883801594b6e1b452790cc53948fda","fe5dbbcea5ce7e2988b8c69bcfdfde8904aabc1f","0ade7c2cf97f75d009975f4d720d1fa6c19f4897","b6589fc6ab0dc82cf12099d1c2d40ab994e8410c","3bc15c8aae3e4124dd409035f32ea2fd6835efc9","21606782c65e44cac7afbb90977d8b6f82140e76","22ea1c649c82946aa6e479e1ffd321e4a318b1b0","aff024fe4ab0fece4091de044c58c9ae4233383a","58e6b3a414a1e090dfc6029add0f3555ccba127f","4dc7c9ec434ed06502767136789763ec11d2c4b7","8efd86fb78a56a5145ed7739dcb00c78581c5375","95cb0bfd2977c761298d9624e4b4d4c72a39974a","51e69892ab49df85c6230ccc57f8e1d1606caccc","042dc4512fa3d391c5170cf3aa61e6a638f84342","7a81af3e591ac713f81ea1efe93dcf36157d8376","516b9783fca517eecbd1d064da2d165310b19759","4a0a19218e082a343a1b17e5333409af9d98f0f5","07c342be6e560e7f43842e2e21b774e61d85f047","86f7e437faa5a7fce15d1ddcb9eaeaea377667b8","54fd1711209fb1c0781092374132c66e79e2241b","60ba4b2daa4ed4d070fec06687e249e0e6f9ee45","d1854cae891ec7b29161ccaf79a24b00c274bdaa","7a81af3e591ac713f81ea1efe93dcf36157d8376","53a0acfad59379b3e050338bf9f23cfc172ee787","042dc4512fa3d391c5170cf3aa61e6a638f84342","a0f1490a20d0211c997b44bc357e1972deab8ae3","53a0acfad59379b3e050338bf9f23cfc172ee787","4a0a19218e082a343a1b17e5333409af9d98f0f5","07c342be6e560e7f43842e2e21b774e61d85f047","86f7e437faa5a7fce15d1ddcb9eaeaea377667b8","54fd1711209fb1c0781092374132c66e79e2241b","c2b7df6201fdd3362399091f0a29550df3505b6a","86f7e437faa5a7fce15d1ddcb9eaeaea377667b8","a0f1490a20d0211c997b44bc357e1972deab8ae3","3c363836cf4e16666669a25da280a1865c2d2874","4a0a19218e082a343a1b17e5333409af9d98f0f5","54fd1711209fb1c0781092374132c66e79e2241b","27d5482eebd075de44389774fce28c69f45c8a75","5c2dd944dde9e08881bef0894fe7b22a5c9c4b06","13fbd79c3d390e5d6585a21e11ff5ec1970cff0c","07c342be6e560e7f43842e2e21b774e61d85f047","395df8f7c51f007019cb30201c49e884b46b92fa","11f6ad8ec52a2984abaafd7c3b516503785c2072","84a516841ba77a5b4648de2cd0dfcb30ea46dbb4","7a38d8cbd20d9932ba948efaa364bb62651d5ad4","e9d71f5ee7c92d6dc9e92ffdad17b8bd49418f98","d1854cae891ec7b29161ccaf79a24b00c274bdaa","6b0d31c0d563223024da45691584643ac78c96e8","5c10b5b2cd673a0616d529aa5234b12ee7153808","4a0a19218e082a343a1b17e5333409af9d98f0f5","07c342be6e560e7f43842e2e21b774e61d85f047","86f7e437faa5a7fce15d1ddcb9eaeaea377667b8","54fd1711209fb1c0781092374132c66e79e2241b","60ba4b2daa4ed4d070fec06687e249e0e6f9ee45","54fd1711209fb1c0781092374132c66e79e2241b","86f7e437faa5a7fce15d1ddcb9eaeaea377667b8","6b0d31c0d563223024da45691584643ac78c96e8","58e6b3a414a1e090dfc6029add0f3555ccba127f","53a0acfad59379b3e050338bf9f23cfc172ee787","84a516841ba77a5b4648de2cd0dfcb30ea46dbb4","22ea1c649c82946aa6e479e1ffd321e4a318b1b0","e9d71f5ee7c92d6dc9e92ffdad17b8bd49418f98","53a0acfad59379b3e050338bf9f23cfc172ee787","042dc4512fa3d391c5170cf3aa61e6a638f84342","a0f1490a20d0211c997b44bc357e1972deab8ae3","042dc4512fa3d391c5170cf3aa61e6a638f84342","a0f1490a20d0211c997b44bc357e1972deab8ae3","53a0acfad59379b3e050338bf9f23cfc172ee787","84a516841ba77a5b4648de2cd0dfcb30ea46dbb4","11f6ad8ec52a2984abaafd7c3b516503785c2072","95cb0bfd2977c761298d9624e4b4d4c72a39974a","395df8f7c51f007019cb30201c49e884b46b92fa","c2b7df6201fdd3362399091f0a29550df3505b6a","3a52ce780950d4d969792a2559cd519d7ee8c727","86f7e437faa5a7fce15d1ddcb9eaeaea377667b8","a0f1490a20d0211c997b44bc357e1972deab8ae3","3c363836cf4e16666669a25da280a1865c2d2874","4a0a19218e082a343a1b17e5333409af9d98f0f5","54fd1711209fb1c0781092374132c66e79e2241b","27d5482eebd075de44389774fce28c69f45c8a75","5c2dd944dde9e08881bef0894fe7b22a5c9c4b06","13fbd79c3d390e5d6585a21e11ff5ec1970cff0c","07c342be6e560e7f43842e2e21b774e61d85f047","395df8f7c51f007019cb30201c49e884b46b92fa","11f6ad8ec52a2984abaafd7c3b516503785c2072","84a516841ba77a5b4648de2cd0dfcb30ea46dbb4","7a38d8cbd20d9932ba948efaa364bb62651d5ad4","e9d71f5ee7c92d6dc9e92ffdad17b8bd49418f98","d1854cae891ec7b29161ccaf79a24b00c274bdaa","6b0d31c0d563223024da45691584643ac78c96e8","5c10b5b2cd673a0616d529aa5234b12ee7153808","3a52ce780950d4d969792a2559cd519d7ee8c727","22ea1c649c82946aa6e479e1ffd321e4a318b1b0","aff024fe4ab0fece4091de044c58c9ae4233383a","58e6b3a414a1e090dfc6029add0f3555ccba127f","4dc7c9ec434ed06502767136789763ec11d2c4b7","8efd86fb78a56a5145ed7739dcb00c78581c5375","95cb0bfd2977c761298d9624e4b4d4c72a39974a","51e69892ab49df85c6230ccc57f8e1d1606caccc","042dc4512fa3d391c5170cf3aa61e6a638f84342","7a81af3e591ac713f81ea1efe93dcf36157d8376","516b9783fca517eecbd1d064da2d165310b19759","4a0a19218e082a343a1b17e5333409af9d98f0f5","07c342be6e560e7f43842e2e21b774e61d85f047","86f7e437faa5a7fce15d1ddcb9eaeaea377667b8","54fd1711209fb1c0781092374132c66e79e2241b","60ba4b2daa4ed4d070fec06687e249e0e6f9ee45","d1854cae891ec7b29161ccaf79a24b00c274bdaa","7a81af3e591ac713f81ea1efe93dcf36157d8376","53a0acfad59379b3e050338bf9f23cfc172ee787","042dc4512fa3d391c5170cf3aa61e6a638f84342","a0f1490a20d0211c997b44bc357e1972deab8ae3","53a0acfad59379b3e050338bf9f23cfc172ee787","4a0a19218e082a343a1b17e5333409af9d98f0f5","07c342be6e560e7f43842e2e21b774e61d85f047","86f7e437faa5a7fce15d1ddcb9eaeaea377667b8","54fd1711209fb1c0781092374132c66e79e2241b","c2b7df6201fdd3362399091f0a29550df3505b6a","356a192b7913b04c54574d18c28d46e6395428ab","da4b9237bacccdf19c0760cab7aec4a8359010b0","77de68daecd823babbb58edb1c8e14d7106e83bb","1b6453892473a467d07372d45eb05abc2031647a","ac3478d69a3c81fa62e60f5c3696165a4e5e6ac4","c1dfd96eea8cc2b62785275bca38ac261256e278","902ba3cda1883801594b6e1b452790cc53948fda","fe5dbbcea5ce7e2988b8c69bcfdfde8904aabc1f","0ade7c2cf97f75d009975f4d720d1fa6c19f4897","b6589fc6ab0dc82cf12099d1c2d40ab994e8410c","3bc15c8aae3e4124dd409035f32ea2fd6835efc9","21606782c65e44cac7afbb90977d8b6f82140e76"]
sha1_dict = {}
# 对每个字符进行SHA-1加密并存储到字典 for char in keyboard_chars: sha1_hash = hashlib.sha1(char.encode()).hexdigest() sha1_dict[sha1_hash] = char
# 存储所有找到的字符 matched_chars = []
# 匹配哈希值并输出对应的字符 for sha1_hash in hash_list: if sha1_hash in sha1_dict: matched_chars.append(sha1_dict[sha1_hash]) else: matched_chars.append('?') # 如果找不到对应字符,使用问号表示
# 将所有匹配的字符组合成一个字符串 result_string = ''.join(matched_chars)
print("Matched characters:", result_string)
|