【问题标题】:How to encrypt a message python with a javascript example如何使用 javascript 示例加密消息 python
【发布时间】:2020-01-12 20:37:35
【问题描述】:

嘿,我需要在 python 中加密消息,但我有一个 javascript 示例。

这就是我所拥有的。

BLOCK_SIZE=16
message = 1234
passphrase = "ed8b1a3b-5cf1-4ba5-87af-790905f6bae3"
def encrypt(message, passphrase):
    # passphrase MUST be 16, 24 or 32 bytes long, how can I do that ?
    IV = Random.new().read(BLOCK_SIZE)
    aes = AES.new(passphrase, AES.MODE_ECB, IV)
    return base64.b64encode(aes.encrypt(message))

print (encrypt(message , passphrase))

这是一个例子

import * as CryptoJS from 'crypto-js';

  aesEncrypt(text, key){
    let k = key.replace(/-/g, '').substring(0,16);
    k = CryptoJS.enc.Utf8.parse(k);
    const iv = CryptoJS.enc.Utf8.parse('0000000000000000');
    const encrypted = CryptoJS.AES.encrypt(text.trim(), k, {
      keySize: 16,
      iv: iv,
      mode: CryptoJS.mode.ECB,
      padding: CryptoJS.pad.Pkcs7
    });
    console.log(encrypted.toString());
    return encrypted.toString();
  }

【问题讨论】:

  • 我们希望您先尝试一下。
  • 您的具体问题是什么?

标签: javascript python encryption


【解决方案1】:
  1. 在发布之前,请务必阅读文档并检查类似问题。这是一个类似帖子的链接,以及如何直接从文档中以简单的方式执行此操作。希望能帮助到你。

安装 Crypo 库

pip install cryptography

然后使用下面的

>>> from cryptography.fernet import Fernet
>>> # Put this somewhere safe!
>>> key = Fernet.generate_key()
>>> f = Fernet(key)
>>> token = f.encrypt(b"A really secret message. Not for prying eyes.")
>>> f.decrypt(token)

示例输出 '一个真正的秘密消息。不是为了窥探。'

from cryptography.fernet import Fernet

message = "A really secret message. Not for prying eyes."
key = Fernet.generate_key()

def encrypt(message, key):
        f = Fernet(key)
        token = f.encrypt(b"A really secret message. Not for prying eyes.")
        print(token)
        decrypted = f.decrypt(token)
        print(decrypted)


encrypt(message, key)

链接 -Doc Lib https://pypi.org/project/cryptography/

Stackoverflow 上的类似问题,答案比我上面的更详细,

How do I encrypt and decrypt a string in python?

【讨论】:

    猜你喜欢
    • 2021-07-04
    • 2020-05-07
    • 2016-06-08
    • 2012-01-17
    • 2020-03-07
    • 2022-01-16
    • 1970-01-01
    • 1970-01-01
    • 2020-08-05
    相关资源
    最近更新 更多