问题标签 [lockbox-3]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2005 浏览

delphi - TSimpleCodec.Begin_EncryptMemory - 错误模式

我得到 TSimpleCodec.Begin_EncryptMemory - 执行以下代码时出现错误模式异常。有什么问题吗?

0 投票
2 回答
3535 浏览

delphi - Delphi & PHP 中的安全密钥对加密解决方案?

我的应用程序通过 Internet 发送加密文件,我需要能够执行以下操作:

  1. 客户端 Delphi 2010) :使用我的应用程序附带的公钥加密文件并将其上传到服务器
  2. 服务器端 PHP) :使用我存储在服务器上的私钥解密上传的文件
  3. (处理上传的文件...)

听起来很简单,但我找不到任何可靠的代码/组件,我找到了这些组件:

  1. 数字加密货币。这是我现在在开发中使用的,但似乎不支持基于密钥对的加密(RSA?)

  2. GnuPgp (GPL) 所以我不能在我的商业应用程序上使用它。

  3. TurboPower LockBox 3:确实支持密钥对加密,但非常神秘(没有文档 AFAIK)并且似乎不支持文件加密。

我的问题是:是否有一个安全/可靠的加密组件:

  1. 实现我上面描述的(即密钥对加密)
  2. 可以使用PHP解密
  3. 适用于大文件/流
  4. 在这里做梦!)有一个简单的 delphi/php 演示来展示如何做到这一点?:)
  5. 请仅使用 FOSS 解决方案,我已经超出预算了 :)
0 投票
1 回答
3250 浏览

delphi - Turbopower Lockbox3 - 我可以控制 AES-256 加密的初始化向量和填充吗?

在从 Delphi2007 迁移到 XE2 的过程中,我们正在考虑将加密库从 DCPCrypt 切换到 Turbopower Lockbox 3。

a) 在 DCPCrypt 中,我对初始化向量有明确的控制。如何在 TPLB3 中设置 IV?

b) DCPCrypt 没有填充,我们在加密前用零填充明文。TPLB怎么垫?当然,我们仍然可以自己做。

测试向量

  • 密码 = AES-256;
  • 链接模式 = CBC;
  • 终止 = C# 样式全零填充;
  • IV 传输 = 以明文形式预先在密文流中的完整块。
  • 密钥 = 33d46cffa158533194214a91e712fc2b45b587076675affd910edeca5f41ac64 little-endien
  • IV = 917fe226df8308f4d96c33304768354a
  • 密文 = +kdTGzdV5KZIw8tv466nhQ== (base64)
  • 明文 = 'a_decent_text' (ansistring)

谢谢简

0 投票
1 回答
531 浏览

delphi - LockBox Stream 读取错误,RSA

我正在从流中加载 RSA 密钥并收到“流读取”错误?我应该尝试让我的代码正常工作的第一件事是什么?

0 投票
1 回答
4538 浏览

php - AES 加密/解密 Delphi & PHP

我的 Delphi 应用程序使用 TurboPower LockBox 3 使用 AES 256 加密纯文本信息。我现在想使用 PHP 解密此信息。但是 TurboPower LockBox 3 存在一些互操作性问题。

请在此处查看 LockBox 3 作者的帖子以获取详细信息:

http://lockbox.seanbdurkin.id.au/tiki-view_forum_thread.php?comments_parentId=363&topics_offset=1

以及 Stackoverflow 上的类似帖子

Delphi & PHP 中的安全密钥对加密解决方案?

在 LockBox 3 中,在加密期间,您设置了密码。然后将该密码用作生成密钥和 iv 的种子。那么有没有人能够模仿 PHP 端的密钥生成方法?或者有什么方法可以让 LockBox 3 生成的 Key/IV 并将其放入我的 PHP 代码中,以便可以解密文件?

0 投票
2 回答
1436 浏览

php - PHP implementing Ciphertext Stealing (CTS) with CBC

I have been trying to implement Ciphertext Stealing(CTS) in PHP for CBC.

Referring below two links

How can I encrypt/decrypt data using AES CBC+CTS (ciphertext stealing) mode in PHP?

and

http://en.wikipedia.org/wiki/Ciphertext_stealing

I am confused and stuck on the last and simplest step of XOR. I know this is silly but having tried all the combinations, i don't know what am i missing. Code follows.

0 投票
1 回答
3345 浏览

php - TPLockBox3 和 PHP - Delphi 中的 AES 加密,PHP 中的解密

我在使用 lockbox3 和 PHP mcrypt 时遇到了问题。我无法将 IV 传递给 PHP。德尔福代码

PHP 代码

我收到一个错误:

警告:mcrypt_generic_init() [function.mcrypt-generic-init]:IV 大小不正确;提供的长度:8,需要:32 在 C:...\aestest.php 第 7 行

相关主题:AES 加密/解密 Delphi & PHP

0 投票
2 回答
3435 浏览

file - 了解加密文件,使用 LockBox 3 和 Delphi XE2

因此,我当前的任务涉及获取给定的文本字符串(例如:ABC123)并使用 LockBox3 的 EncryptString(source, target) 函数对其进行加密。我可以成功加密字符串并将输出保存到 .txt 文件中。

此过程的下一步是使用 LockBox3 的 EncryptFile(source, target) 函数获取包含我已经加密的字符串的 .txt 并使用 AES-128 加密所述文件(与字符串加密相同,但密码不同)

基本上,我可以让字符串正确加密并输出到 .txt 文件。然后我请求用户获取 .txt,并将其带入我的程序。然后程序会尝试获取该文件并进一步加密它。当我这样做时,我得到一个要输出的文件..但是当我去解密所述文件时,生成的 .txt 不包含原始文本..或任何与此相关的文本。我基本上对应该如何加密 .txt 文件感到困惑。有什么建议么?如果这个问题/代码不够具体,我深表歉意。请让我知道还有什么,如果我需要澄清一下情况,以便更好地帮助你们了解我正在努力解决的问题!谢谢!

编辑1:

好的,谢谢大家的建议。澄清:

我在解密过程中拥有的流将在以后使用,以便在我解密文件后,我可以从中读取并解密剩余的加密(从第一步开始)字符串。

进一步澄清:

我用于加密字符串的编解码器(Codec1)使用带有 CBC 的 AES-128,标签为“0”,AsymetricKeySize 为 1024(我很确定这与这种类型的加密无关正确吗?)我用于加密文件的编解码器(上面的 Codec2)具有相同的设置,但是 Codec1 和 Codec2 的密码不同。基本上,我使用 Codec1 加密字符串并将其写入 .txt,然后使用 Codec2 加密所述文件..最终解密它并使用 Stream 从所述文件中读取并再次使用 Codec1 解密该字符串。

我的文件加密/解密代码:

字符串加密:

将加密字符串写入文件并保存:

获取 .txt 的位置以进行文件加密:

文件加密:

抓取加密文件进行解密:

文件解密(打开一个流以从解密文件中读取它,以便我可以解密它包含的加密字符串):

0 投票
1 回答
1008 浏览

lockbox-3 - DCPCrypt 到 Lockbox3 的迁移

我是加密/解密例程的新手。我正在尝试使用我想将我的应用程序迁移到的 Lockbox3,以便解密使用 DCPCrypt 加密的字符串。假设我有这个加密功能:

我现在想解密使用 Lockbox3 以这种方式加密的字符串,但我应该使用 encrypt 函数中使用的值作为 m 和 sm,我知道我该怎么做 - 如果可以的话。我想使用 sm 值来设置 Codec1.Password 但这不起作用。

任何的想法?感谢大家的任何建议。

0 投票
1 回答
302 浏览

delphi - 加密字符串时如何始终获得具有相同设置的相同结果?

在 Delphi XE2 中,使用 Turbopower Lockbox-3,我使用以下代码加密字符串:

Cipher 是[AES-192],ChainMode 是PCBC

但是,每次我使用相同的设置加密相同的字符串时,都会产生不同的结果。
如何始终获得具有相同设置的相同结果字符串?(密码、密码、链模式等)。