Delphi 2010访问数据库登录和备忘录(Delphi 2010 Acces database login and memo)
我正在尝试在注册表单上验证新用户的电子邮件,但是在使用Acces数据库的备忘录时遇到了问题。
if not(TblUsername.locate('Email',EdtMail.Text,[])) then
[EdtMail是编辑框,“电子邮件”是微软访问数据库中的备忘录类型列]
问题似乎是定位功能。 我搞不清楚了。
I am trying to verify the Email of a new user on the registration form, but am having trouble with memo of Acces database.
if not(TblUsername.locate('Email',EdtMail.Text,[])) then
[EdtMail is the editbox and 'Email' is the column of type memo in microsoft access database]
The trouble seems to be the locate function. I am lost.
原文:https://stackoverflow.com/questions/26592048
最满意答案
当相同的密钥可能被用于加密多个消息时,IV是必不可少的。
原因是因为在大多数加密模式下,可以一起分析使用相同密钥加密的两条消息。 例如,在简单的流密码中,使用相同密钥加密的两个密文的异或运算导致两个消息的异或,可以使用传统的密码分析技术从中明文提取明文。
弱IV是使WEP变得脆弱的一部分。
一个IV基本上将一些独特的,非秘密的数据混合到密钥中,以防止使用两次相同的密钥。
An IV is essential when the same key might ever be used to encrypt more than one message.
The reason is because, under most encryption modes, two messages encrypted with the same key can be analyzed together. In a simple stream cipher, for instance, XORing two ciphertexts encrypted with the same key results in the XOR of the two messages, from which the plaintext can be easily extracted using traditional cryptanalysis techniques.
A weak IV is part of what made WEP breakable.
An IV basically mixes some unique, non-secret data into the key to prevent the same key ever being used twice.
相关问答
更多-
我应该使用初始化向量(IV)以及我的加密吗?(Should I use an initialization vector (IV) along with my encryption?)[2022-11-08]
当相同的密钥可能被用于加密多个消息时,IV是必不可少的。 原因是因为在大多数加密模式下,可以一起分析使用相同密钥加密的两条消息。 例如,在简单的流密码中,使用相同密钥加密的两个密文的异或运算导致两个消息的异或,可以使用传统的密码分析技术从中明文提取明文。 弱IV是使WEP变得脆弱的一部分。 一个IV基本上将一些独特的,非秘密的数据混合到密钥中,以防止使用两次相同的密钥。 An IV is essential when the same key might ever be used to encrypt mo ... -
AES加密 - 密钥与IV(AES Encryption - Key versus IV)[2022-11-09]
从其他答案可以看出,每个加密文件拥有唯一的IV是至关重要的,但为什么呢? 首先 - 我们来看看为什么每个加密文件的唯一IV是重要的。 ( 维基百科IV )。 IV在您的加密过程开始时增加了随机性。 当使用链接块加密模式(其中一个加密数据块包含先前的加密数据块)时,我们在第一个块中留下了一个问题,这是第四个块所在的地方。 如果没有IV,并且仅使用链接块加密,则以相同文本开头的两个文件将产生相同的第一个块。 如果输入文件在中途更改,那么两个加密文件将从该点开始看起来不一样,直到加密文件的末尾。 如果有人在一开始 ... -
如何从OpenSSL加密数据中获取初始化向量(iv)(How do I get the initialization vector (iv) from OpenSSL encrypted data)[2022-07-08]
应为您加密的每条消息随机选择IV。 我假设您使用的是OpenSSL命令行实用程序openssl enc ,但不清楚您是使用基于密码的加密( -pass和-salt选项)还是明确指定密钥( -K和-IV选项)。 为了获得最佳安全性,我建议您使用-K选项,并为每条消息随机生成新的IV。 发送IV和密文。 例如,您可以将密文附加到一个文件中的IV,然后在准备解密时从文件的开头删除IV。 IV可以是公开的; 你不必隐藏它。 重要的是你为每条消息使用不可预测的IV。 The IV should be chosen r ... -
加密中的初始化向量(Initialization Vector in encryption)[2022-09-08]
没关系。 任何东西都可以在初始化向量中(只要双方在向量中使用相同的值)。 这些值在示例中使用,因为它们很简单...... 在此处阅读有关初始化向量的更多信 It doesn't matter. Anything can be in the initialization vector (as long as both sides use the same values in the vector). These values are used in examples because they are simp ... -
IV必须与块大小完全相同,在AES情况下为16个字节。 The IV must be exactly the same size as the block size, which in the case of AES is 16 bytes.
-
加密初始化向量(Encryption Initialization Vector)[2022-03-24]
在回答您的问题时,请注意以下事项: PT(x) = Plain Text representation of 'x' CT(x) = Cipher Text representation of 'x' Bn = Logical Data Block 'n' in a sequence of multiple blocks. 1.什么是IV? IV是初始化向量的简短表示法。 它用于对称块加密算法,在所谓的链接或反馈模式下执行加密。 在任一种情况下,先前的加密数据块被用作一段功能数据“goo”以改变下一 ... -
您将密钥传递两次到CreateEncryptor ,但它需要一个密钥和一个IV( 初始化向量 )。 第二个参数应该是一个包含128个随机位的数组。 128位是RijndaelManaged的默认块大小,但它也接受其他值(例如256)。 阅读本文以获取更多信息。 正如Grzegorz W在评论中指出的那样,您可能还需要选择不同的密钥大小 。 如果您不熟悉加密(在这种情况下,您应该在实现自己的解决方案之前停止并了解更多信息,或者使用现成的解决方案), IV的功能是防止相同的消息编码两次产生相同的密文。 它应该是 ...
-
您可以告诉收件人实现PBKDF2,这是RFC2898和PKCS#5中定义的标准。 微软的文档说他们的函数使用HMAC-SHA-1作为伪随机函数,1000作为默认的迭代次数。 这是他们需要的信息。 但是,您还需要在发送端传输使用GenerateSalt()创建的salt。 收件人不能自己调用GenerateSalt() - 它应该为每条消息随机生成。 You would tell the recipient to implement PBKDF2, which is a standard defined in ...
-
我正在使用AnsiString来存储上下文的密钥。 这是真正的问题,因为在pascal AnsiString中不是单字节。 由于@CodeInChaos专注于AnsiString,我检查了它并找到了它。 所以我已经取代了 Key: AnsiString 至 Key : Array [0..32] of Char; 它成功地运作了。 谢谢@CodeInChaos。 I was using AnsiString to store the Key for the Context. This was the ...
-
IV必须是随机的,但不需要保密。 通常的做法是在传输之前将IV添加到密文。 解密时,使用密文的前16个字节作为IV来解密余数。 这样您就不必单独存储它,因为它包含在密文中。 The IV needs to be random, but does not need to be secret. Usual practice is to prepend the IV to the cyphertext before transmitting it. When decrypting, use the first 1 ...