当前位置: 首页 > 知识库问答 >
问题:

Laravel7.x加密,CryptoJS解密?

巫墨一
2023-03-14
$test = Crypt::encryptString('Testing this');

我尝试过的解决方案:

1.以下代码

https://gist.github.com/huzemin/e8d7a904cec55d4d7635c9322f143c42

APP_KEY=base64:0q2V8/90FYnWmEKpks13QMPHoEJhZLlEcr9eW0BMdhU=
//This is my key on the .env

$test = Crypt::encryptString('Testing this');
//eyJpdiI6Ilk0TGJ4eEh3WGUyTzhaWVdCMXY4SHc9PSIsInZhbHVlIjoiU3JuQXh0ekl6cEpBekgwVnJKSzBZZz09IiwibWFjIjoiYTRjYTM5ZTJlNzViMjVmZDIxMWU0Y2M0ZmQ4Y2YyZDVkZDMzOGZiMGZmMDU5N2RjNDYxMDcxMDcyNzA4ZjIzNiJ9

共有1个答案

席波娃
2023-03-14

好吧,原来,大意上的脚本,就快到了,我只是改变了我拿钥匙的方式,按照第23行的“Tim-Reynolds-the Grommet”注释,第12行的注释(这是他没有提到的),也许太明显了,我觉得自己很笨:(,无论如何,每句话都是这样

CryptoJS.enc.Utf8.parse(this.key)

应改为

CryptoJS.enc.Base64.parse(this.key)

是的,您不需要key from.env laravel文件中的“base64:”,只需复制其余部分,

例:

APP_KEY=base64:0q2V8/90FYnWmEKpks13QMPHoEJhZLlEcr9eW0BMdhU=

就拿

0q2V8/90FYnWmEKpks13QMPHoEJhZLlEcr9eW0BMdhU=

作为你的钥匙,感谢罗伯特哈维的评论。

 类似资料:
  • 问题内容: 我有以下Go代码 输出是 使用以下CryptoJS加密 并且可以用解密 输出是-这是正确的输出 为什么Go会有不同的输出? 问题答案: 请检查您的错误。总是 https://play.golang.org/p/dRLIT51u4I 更具体地说,字节75处的值为,超出了base64可用字符的范围。在ascii中,它是ENQ(查询)字符。至于为什么它最终出现在您的最终base64字符串中,

  • 注意:这只是为个人使用和学习,我不是试图滚动我自己的加密为公众使用。 我需要AES256加密一个字符串,但是我当前的尝试在十六进制解码时最终得到了一个类似server side的字符串。当十六进制解码时,它应该是一个有效的utf8 base64字符串,然后可以将其解码为原始字符串。这与这里提供的解决方案类似,但是salt并不是实际问题(尽管答案被接受),并且我无法在使用之前通过十六进制解码iv来抑

  • 客户端: 服务器端:

  • 我之所以问这个问题,是因为两天来我读了很多关于crypto AES加密的帖子,就在我以为我得到了它的时候,我意识到我根本没有得到它。 这个帖子是最接近我的问题,我有完全相同的问题,但它没有得到回答: CryptoJS AES加密与JAVA AES解密值不匹配 我得到的是已经加密的字符串(我得到的代码只是为了看看他们是怎么做的),所以修改加密方式不是一个选项。这就是为什么所有类似的问题对我来说都不是

  • 我在基本加密/解密方面遇到了麻烦。我到处找了一个可行的例子,但还没有找到一个可行的例子。 -我将使用php加密,使用cryptojs解密,以获得一个小的安全层

  • 我正在尝试使用CryptoJS在JavaScript中进行加密,在C#中进行解密。花了很多时间试图让两种技术返回相同的输出。但是,输出是不同的--CryptoJS产生的加密字符串不同于C#产生的加密字符串。我做错了什么?谢谢你的帮助。