我在特定文件夹中有一些 .SQL 文件,所以我想使用 OpenSSL 对它们进行加密。
这显然不起作用:
openssl aes-256-cbc -in *.sql -out *.sql.enc -pass ...
我在特定文件夹中有一些 .SQL 文件,所以我想使用 OpenSSL 对它们进行加密。
这显然不起作用:
openssl aes-256-cbc -in *.sql -out *.sql.enc -pass ...
OpenSSL 的命令行参数非常挑剔。它根本没有给出好的错误信息。而且很容易把事情搞砸而没有注意到。
试试这个:
$ for i in $(seq 9); do echo "This-is-file-#$i." > $i.sql; done
$ tail *.sql
==> 1.sql <==
This-is-file-#1.
==> 2.sql <==
This-is-file-#2.
==> 3.sql <==
This-is-file-#3.
==> 4.sql <==
This-is-file-#4.
==> 5.sql <==
This-is-file-#5.
==> 6.sql <==
This-is-file-#6.
==> 7.sql <==
This-is-file-#7.
==> 8.sql <==
This-is-file-#8.
==> 9.sql <==
This-is-file-#9.
(我对此有一种不好的感觉。不知道这有多糟糕。但这对于这个演示来说是必须的。我清理了 Bash shell 命令历史,但我怀疑这还不够。——其他人将不得不回答这个问题在另一个问题中。)
$ export mypasswordvariable='Pa$$w0rd'
$ history -c
$ echo -n $mypasswordvariable | xxd
00000000: 5061 2424 7730 7264 Pa$$w0rd
$ find -maxdepth 1 -type f -iname '*.sql' -exec openssl aes-256-cbc -pass env:mypasswordvariable -base64 -salt -in \{\} -out \{\}.enc \;
$ tail *.enc
==> 1.sql.enc <==
U2FsdGVkX19njV2FbnxtQNEZfOZM49YmCSYCE4cOeKeLZDrfovbzad+dFoxds+uN
==> 2.sql.enc <==
U2FsdGVkX189IIeDm3mJEA8EG56I/mAzasXrtNhEDY8MT1/IOkHS/WKDHH7h69Fo
==> 3.sql.enc <==
U2FsdGVkX1/y3eRAFIIbsreix9nhpg611t3w0jn19Px8lBTjeE44rItSwwaaCudt
==> 4.sql.enc <==
U2FsdGVkX1/jHEXUfqzr0mdtChCIeQhFpRe+P0cOSeJf0Er96fDKD0nKV0nwPpL3
==> 5.sql.enc <==
U2FsdGVkX1/ask3K8Zt0bgvP/u5SL6hiFBz7u6Msc3LgRQXwa9Qgr4o04A8melkl
==> 6.sql.enc <==
U2FsdGVkX1+YRUF/nBKBdV4XIcyyyZBd7slaXMIQCSIvUnEeSkaR6GPYdE57Z1ng
==> 7.sql.enc <==
U2FsdGVkX1/zJSXlPNNJmMO4dfSqyGkweD+wAftmgOHgpT0NIEoexX0pRKQLPDkR
==> 8.sql.enc <==
U2FsdGVkX1/7i3jxHVTbqjA8JycR0+/46nWpJZHQ9HhGAFjRuszi/YLFe+2cWSMG
==> 9.sql.enc <==
U2FsdGVkX1/Zg7v5fgAJWUuBmb1mz/2cGwTwLSNbTHeSsCs3YtBe1fKpjY5CFIJ/
$ find -maxdepth 1 -type f -iname '*.sql.enc' -print -exec openssl aes-256-cbc -d -pass env:mypasswordvariable -base64 -salt -in \{\} \;
./1.sql.enc
This-is-file-#1.
./2.sql.enc
This-is-file-#2.
./3.sql.enc
This-is-file-#3.
./4.sql.enc
This-is-file-#4.
./5.sql.enc
This-is-file-#5.
./6.sql.enc
This-is-file-#6.
./7.sql.enc
This-is-file-#7.
./8.sql.enc
This-is-file-#8.
./9.sql.enc
This-is-file-#9.
对。解密工作。