问题标签 [pgcrypto]
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.
postgresql - Postgres 中的 Postgres 11.4 crypt 扩展问题
我在我的 PostgreSQL 数据库中使用 pgcrypto 扩展进行密码加密。我使用相同的密钥来加密所有密码。当我在不同的密码(不同的字符串)中使用相同的密钥时,它会给出相同的输出。
样品:
为什么会这样?。当我传递两个不同的字符串时,它应该给出不同的加密字符串作为输出。这是一个错误吗?我该如何解决这个问题?我无法更改密钥。密钥应该始终相同。
Postgres 版本:
扩展版本:
node.js - PostgreSQL 加密到 Node.js 解密
在 Postgres 中,我正在使用:
https://www.postgresql.org/docs/8.3/pgcrypto.html - F.20.4。原始加密函数
我假设这是使用 AES-128 算法的默认值 CBC 模式完成的。
它似乎在数据库中存储为 BINARY(16 字节)并以 base64 形式返回?当我用我的 ORM 请求服务器上的列时编码的字符串。
在 Node.js 中,假设我有“mykey”,如何使用crypto
或crypto-js
库将此值转换回其纯文本?
postgresql - Postgres 创建扩展命令 Docker 容器
我需要为在 Docker 内部运行的 Postgres 实例创建扩展 - 特别是postgis。我关注了其他 SO 帖子,包括这个帖子,但无济于事。
这是我到目前为止所拥有的...
Dockerfile
ext-script.sql
码头工人运行命令
日志
我错过了什么?
更新
我最终使用了postgis dockerhub 图像。
当您知道如何时,一切都很容易:)
sql - 在 postgresql 中旋转加密密钥的最佳方法
我们需要加密 postgresql 9.6 数据库中的一些列。我们计划使用 pgcrytpo 的非对称密钥方法来满足我们的要求。我们使用 pg_dump 保留每日、每周、每月和每年的备份。
我们计划每个月轮换加密密钥,我对此有一些疑问
- 在旋转密钥时,我们是否必须解密用以前的密钥加密的数据并再次用新密钥加密,或者我们可以使用任何其他方法?
- 由于我们保留了非常旧的备份,我们是否必须恢复备份并解密用以前的密钥加密并再次用新密钥加密的数据?
- 密钥轮换的最佳做法和要点是什么?
由于我是第一次进行加密,如果我问了任何愚蠢的问题,请多多包涵。
ruby-on-rails - 无法加载“pgcrypto”Active Record 适配器
我需要在 postgresql 数据库中存储一些机密数据。为了做到这一点,我使用了 pgcrypto gem。我将此 gem 添加到 Gemfile 中,并将 database.yml 中的适配器名称更改为 pgcrypto。并在捆绑安装后执行以下命令。rails generate pgcrypto:install
. 但我收到以下错误Could not load the 'pgcrypto' Active Record adapter. Ensure that the adapter is spelled correctly in config/database.yml and that you've added the necessary adapter gem to your Gemfile. (LoadError)
帮助我解决这个问题。Ruby-2.6.0 和 rails 5.2.4.2
postgresql - PostgreSql:如何使用加密列进行查询
设想:
我创建了一个表:
然后我插入了几条记录,并使用 pgcrypto 加密了昵称列数据:
问题: 现在我尝试按照此答案中的建议使用加密的昵称列从表中获取记录:
我什么也得不到。请注意,我必须将 to 强制nickname
转换为varchar
。即使我将列类型更改为 bytea,我仍然一无所获。请注意,我的对称密钥实际上是相同的:AES_KEY
. 我没有在任何地方生成它。我需要改变长度吗?
我的 PostGreSql 版本是 9.6。
django - Django + PostrgreSQL 性能问题
您好)使用 django-pgcrypto-fields 后出现性能问题:
型号是:
意见.py:第一个:
第二:
所以第二个视图的工作速度要慢 18 倍。如果我将 status_of_assignment=True 更改为 status_of_assignment=False 它的工作速度与第一个一样快。explain() 和 print_sql 向我展示了这一点:对于第一个视图:
第二次
所以我决定设置索引:
我可以在 dbeaver 中看到它们,但性能和解释()中没有任何变化。
我需要如何设置索引,或者问题可能出在其他地方?
python-3.x - 有没有办法使用 Pycryptodome 获得 pgcrypto 的 pgp_sym_encrypt 的输出?
我有一个熊猫数据框,其中一些列已经使用pgp_sym_encrypt
postgres 加密。我知道该加密中使用的密码,并且加密是使用aes256
算法完成的。
在进行了一些数据操作之后,我添加了一些我想以完全相同的方式加密的新列。
要进行加密,我必须在新列的每个单元格上调用一个 REST API,这通常会很慢。我想知道如果Pycryptodome
我们知道要使用的密码和算法,是否可以使用库来实现相同的目标。
python - 来自加密表的 Psycopg2 查询
我遇到了一个问题。使用 . 从表中的加密列中进行选择psycopg2
。使用创建测试表后
我能够将加密的值插入其中。
现在我正在尝试使用psycopg2
with 从表中查询值:
现在这引发了一个错误:
有趣的是,当像这样传递值时,它可以工作:
但这对于 sql-injection 攻击并不安全,对吧?
有谁知道如何正确地做到这一点?谢谢!