使用与密钥相同的字符串加密字符串是否安全?

2023-11-26

在 CBC 模式下使用 AES 并使用 IV(当然)对给定密钥本身进行加密是否存在任何安全缺点?

遵循以下原则:密钥是秘密的,IV 是公开的(因为这不会影响加密的安全性)。

然而,潜在的攻击者将会知道(因为他可以访问源代码),该字符串使用其自身作为密钥进行加密。

我的判断没有发现任何问题,但我正在努力确定。

谢谢。

编辑 - 任务的细节,我希望我能够清楚地传递它们,我自己还不是很清楚:

  1. 我的系统使用加密在 MySQL 表中存储某些值。对 PHP 代码执行加密(不是 MySQL 内置 AES)。显然,我需要一个密钥,该密钥需要由系统管理员在系统设置时设置一次。这很重要,因为在保存任何加密数据后更改密钥将导致该数据无法解密。

  2. 管理员只需通过 FTP(或其他方式)编辑 PHP 脚本文件即可设置密钥。但这不是我想要的。

  3. 我想要的是有一个安装脚本,在此期间管理员选择密钥,该密钥会自行加密并存储到表中。诚然,下面提出的一个有效观点是,您需要密钥来解密密钥...我的推理还不够深入,我正处于调查是否用自身加密密钥的阶段因为密钥仍然是一个安全的东西。

如果您对上述内容有任何想法,我们将不胜感激。

Thanks.


问题是,这有什么意义呢?如果你想解密该字符串,你必须已经知道该字符串;如果你不知道,你不应该能够解密它。恕我直言,这是可能的,但毫无意义。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用与密钥相同的字符串加密字符串是否安全? 的相关文章

  • 使用 PHP 的 JavaScript atob 操作

    我想知道是否可以使用 PHP 解密 JavaScript 加密文本 使用 JavaScript 的 btoa 函数加密 看一下base64 decode http php net manual en function base64 deco
  • RSA 加密-解密:BadPaddingException:数据必须以零开头

    对于一个被问了很多次的问题 我很抱歉向您询问您的技能 我有一个关于 RSA 加密的问题 我已经检查过有关此问题的其他主题 但没有找到任何有用的答案 我希望你能帮助我 我想读取一个文件 加密其内容 然后解密它并将这些解密的字节放入一个新文件中
  • Android 中的字符串加密

    我正在使用代码进行加密和加密 它没有给出字符串结果 字节数组未转换为字符串 我几乎尝试了所有方法将字节数组转换为字符 但没有给出结果 public class EncryptionTest extends Activity EditText
  • 使用 SSL 设置 .Net IBM.XMS 客户端

    我必须创建一个客户端来侦听队列上的消息 正在使用 SSL 我正在 dot net 中进行开发 我浏览了数百页的文档和论坛 找到了一些清晰简洁的内容 但看起来事实并非如此 我有一个 jks 并且我能够 telnet 到正在发布队列的服务器 下
  • AES 会话密钥的 RSA 解密失败,并显示“AttributeError:‘bytes’对象没有属性‘n’”

    我正在努力在 Python 3 6 上从 PyCryptodome 实现公钥加密 当我尝试创建对称加密密钥并加密 解密变量时 一切正常 但是当我引入 RSA 和 PKCS1 OAEP 的那一刻 一切就都顺理成章了 session key加密
  • 加密 mongodb 中的密码字段

    我有以下代码 它插入userName and password进入数据库 但密码以纯文本格式存储 我的意思是 当我查看数据库时 我可以看到插入的密码 我想存储password in encrypted format MongoClient
  • Java 9:AES-GCM 性能

    我进行了一个简单的测试来测量AES GCM https en wikipedia org wiki Galois Counter Mode表现在Java 9 通过在循环中加密字节缓冲区 结果有些令人困惑 本机 硬件 加速似乎有效 但并非总是
  • Java AES 256 加密

    我有下面的 java 代码来加密使用 64 个字符密钥的字符串 我的问题是这会是 AES 256 加密吗 String keyString C0BAE23DF8B51807B3E17D21925FADF273A70181E1D81B8EDE
  • 无论如何要解密加密的sql server存储过程吗?

    我有几个 ms sql server 2000 存储过程 很久以前就被前雇员加密了 一切都很好 直到我们需要稍微改变一下 有什么方法可以检索源代码吗 或者重写是唯一的选择 多谢 或者免费 谷歌是你的朋友 http searchsqlserv
  • asp.net 视图状态加密

    我有几个关于何时以及如何在 ASP NET 3 5 中加密视图状态的问题 例如 如果我的 web config 中有一个机器密钥条目 例如 解密Key 自动生成 IsolateApps 验证 AES 解密 自动 gt 此时视图状态是否已加密
  • AES 加密 Java/plsql

    我需要在Java和plsql DBMS CRYPTO for Oracle 10g 上实现相同的加密 解密应用程序 两种实现都工作正常 但这里的问题是我对相同纯文本的加密得到了不同的输出 下面是用于加密 解密过程的代码 Java 和 PLS
  • 握手失败(40) 和 TLS_EMPTY_RENEGOTIATION_INFO_SCSV

    安装在 jBOSS 上的客户端正在尝试访问在 DataPower 上配置的安全网站xi50v6 0 0 2器具 SSL 握手时连接失败 我在 DataPower 上进行了数据包捕获 发现 SSL 握手失败 并显示以下错误 Descripti
  • 使用 AES 解密时输入数据不是完整的块

    我正在尝试加密来自 oracle 的数据 然后使用 C 解密它 到目前为止 我设法编写了一个在 C 和 Oracle 中加密数据的代码 并且得到了匹配的结果 我试图用 C 解密数据 但收到错误 输入数据不是一个完整的块 甲骨文加密 SELE
  • 如何在 Perl 脚本中加密或隐藏密码?

    我正在研究 Perl 脚本 它使用Expect http search cpan org dist Expect通过 telnet 登录到远程计算机 不要问 必须使用 telnet 我还根据需要执行 perforce p4 登录操作 并使用
  • Golang 中的确定性 RSA 加密 - 如何在多次加密下为给定消息获得相同的结果

    对于下面的RSA加密代码 每次对同一条消息进行加密时 结果都会不同 我发现这是由于rand Reader in the rsa EncryptOAEP功能使其更加安全doc https pkg go dev crypto rsa Encry
  • PHP MCRYPT 加密/解密返回不可见的奇怪字符?

    mcrypt decrypt给了我额外的不可见字符 这些字符通过在页面上回显是不可见的 只能通过将其写入文本文件来查看 也就是说 只显示在页面上就可以了 而且很难被注意到 这是谷歌搜索的代码示例 请指导我正确的用法是什么 有什么问题吗 fu
  • 合法管理员如何获取 Active Directory 中的用户密码?

    如果密码以可逆加密方式存储在 Active Directory 中 管理员 开发人员如何提取和解密该密码 具体来说 我指的是this http technet microsoft com en us library cc784581 WS
  • 如何加密捆绑的文本/json 文件?

    我的 iOS 应用程序捆绑了几个文件 现在 如果有人下载该应用程序并访问 ipa 文件 他就可以轻松阅读它们 我想让事情变得更难 您知道有关该主题的任何资源吗 我想我需要一个加密库 以及编码文件的构建脚本中的一些脚本 当然 我知道有人可能会
  • 如何使 RSACryptoServiceProvider 在没有填充(nopadding)的情况下工作?

    我需要使 C 应用程序与 Java 应用程序兼容 Java 应用程序使用Cipher getInstance RSA ECB nopadding 初始化器使密码 ECB 和无填充 但是 在 C 中 您有 2 个填充选项 OAEP 填充或 P
  • iOS 目标 c 中的 AES/CBC/PKCS5Padding 结果与 Android 不同

    我在 Android 应用程序中使用 AES CBC PKCS5Padding 代码就像 private static String TRANSFORMATION AES CBC PKCS5Padding private static St

随机推荐

  • 卷积的计算复杂度

    我读到一般卷积算法的计算复杂度是O n 2 而通过 FFT 则为O n log n 2 D 和 3 D 中的卷积怎么样 有什么参考吗 对于二维和三维卷积以及快速傅里叶变换 复杂度如下 2D 3D Convolution O n 4 O n
  • UML:当一个类具有指向另一类的方法参数指针时

    当一个类具有指向其他类的方法参数指针 或引用或对象 时 在 UML 中 它反映为关联或聚合 带有菱形 或者有一些特定的符号 正如其他人所解释的 您应该使用依赖关系 而不是任何形式的关联 聚合和组合 依赖性意味着源元素的规范或实现需要目标元素
  • 检查控件是否有 Click EventHandler 上的事件

    我想知道控件是否有为 Click 事件分配的方法 Button b new Button b Click sender e gt What I want b Click Count 1 我需要一些东西至少可以告诉我控件是否有关于单击事件的某
  • 浏览 Azure 部署的 Web 应用程序时出现应用程序错误消息

    我创建了一个简单的 Web 应用程序 无服务器 并使用 Azure 应用服务 VS Code 扩展部署了该 Web 应用程序 我选择了Linus Node LTS环境 我将部署源配置到本地 Git 存储库 也尝试了远程 GitHub 存储库
  • 如何使用多部分/表单数据通过电报机器人发送照片

    我有一个电报机器人 用 python 开发 我想发送 上传照片通过它从我的计算机中的图像 所以我应该通过多部分表单数据来完成 但我不知道怎么做 我也没有在互联网和电报文档上找到有用的来源 我尝试通过下面的代码来做到这一点 但这是错误的 da
  • 了解 .NET 的“SecurityAction”权限参数

    谁能解释 SecurityAction 枚举值的含义和用途 MSDN 页面不是很清楚 它说 LinkDemand 发生在即时编译时 而 Demand 发生在运行时 为什么有这种区别 在什么情况下我会使用 LinkDemand 而不是 Dem
  • 为什么 ProcessPoolExecutor 和 Pool 会因 super() 调用而崩溃?

    1 为什么下面的Python代码使用concurrent futures模块永远挂起 import concurrent futures class A def f self print called class B A def f sel
  • Python Pandas 获取排除当前行的累积和(cumsum)

    我正在尝试获取给定列的累积计数 该列不包括数据框中的当前行 我的代码如下所示 仅使用 cumsum 的问题在于它在计数中包含当前行 我希望 df ExAnte Good Year Count 在 ExAnte 的基础上计算 cumsum 即
  • 将视频流式传输(或渐进式下载)到 Droid 浏览器

    我正在尝试将视频流式传输 或使用渐进式下载 到 Motorola Droid 浏览器 但运气不佳 使用 iPhone 我可以将 Safari 定向到http xxx xxx xxx 文件名 mp4 这是一个 MPEG 4 视频文件 Safa
  • 安卓apk无法安装?我在哪里可以检查此日志?没有给出理由

    我点击 apk 文件 它提示安装 但很快停止 没有指示它是否已安装或问题是什么 如何查看未安装的原因 此类信息的日志在哪里 您可以通过 USB 将您的设备连接到您的机器吗 您应该能够转到提示并执行以下操作 adb install
  • 如何用Matlab构造不等宽直方图?

    我想构造一个具有不等箱 间隔 的直方图 Matlab 仅构造具有相等箱的直方图 就好像它是一个图表一样 请帮助我 非常感谢 这是一个例子 x randn 100 1 3 some random data e 10 5 3 1 1 2 3 2
  • virtualenv蛋黄问题

    yolk l给我的信息是我的 Ubuntu 10 04 上安装了 114 个软件包 使用创建新的 virtualenv 目录后 virtualenv virt env virt1 no site packages clear 我切换到那个
  • Linq-to-Entities:选择查询表达式中的日期格式

    我试图直接从 LINQ to Entities 查询表达式获取格式化的日期字符串 nonBusinessDays from ac in db AdminCalendar where ac DateTimeValue gt calendarS
  • Android Toast 通知在冰淇淋三明治中太小 [重复]

    这个问题在这里已经有答案了 有人对冰淇淋三明治中的吐司通知太小有任何问题吗 在我的应用程序中 通知在所有其他版本上看起来都很好 然而 在冰淇淋三明治中 它的尺寸却小得令人难以置信 起初我以为这可能是我的自定义主题 但禁用它后 我看到了相同的
  • 将数据库保存在外部硬盘上

    我正在使用 PostgreSQL 创建一些数据库 但由于我的计算机内存不足 我想将它们保存在外部硬盘上 我怎样才能做到这一点 您可以将数据库存储在另一个磁盘上 方法是将其指定为data directory环境 您需要在启动时指定它 它将适用
  • 在设计 JS 库时,我应该使其兼容 RequireJS/AMD 还是不兼容?

    如果我正在制作一个通用的 JavaScript 库 我应该如何处理 RequireJS 支持 据我所知 让你的代码或多或少地兼容 RequireJS 会让你的代码在没有 RequireJS 的情况下无法使用 那我为什么要这么做呢 没有 Re
  • omu.valueinjecter 深度克隆与类型不同

    我认为我缺少一个关于 valueinjecter 和 或 AutoMapper 的简单概念 但是如何将父级 dto Entity 深度克隆到 biz Entity 并包含所有子级 例如 biz person InjectFrom dto p
  • 如何创建 NodeJS 模块?

    我已阅读 NodeJS 网站上的详细信息 https nodejs org api modules html 我不明白模块是如何工作的 创建模块的最少步骤是什么 以及 npm 如何帮助我 如何创建模块 我如何使用模块 把它放在 npm 上是
  • 如何在 UIDatePicker 中仅禁用日期选择而不是时间选择

    我在我的应用程序中使用 UIDatePicker 我想仅禁用其中的日期选择 并且时间选择不应受到影响 谁能帮我这个 Set the datePickerMode to UIDatePickerModeTime
  • 使用与密钥相同的字符串加密字符串是否安全?

    在 CBC 模式下使用 AES 并使用 IV 当然 对给定密钥本身进行加密是否存在任何安全缺点 遵循以下原则 密钥是秘密的 IV 是公开的 因为这不会影响加密的安全性 然而 潜在的攻击者将会知道 因为他可以访问源代码 该字符串使用其自身作为