直接看原文吧: https://www.cnblogs.com/xiangyuecn/p/17698735.html
平时见别人写的 shell 脚本,要么是英文要么是中文,没见过一个脚本里面同时支持多种语言的,也搜不到什么比较好学的参考资料,于是给 bash 脚本、bat 脚本分别写了一个同时支持中文和英文显示的函数,可以根据用户语言环境,让脚本自动显示成中文或英文。
bat 里面语言的判断比较骚,使用 ver | find "版本" 直接识别是不是中文😂 bash 的判断就简单很多,函数编写也简单
这些脚本目前是用在了两开源库里面,给 windows 环境编写的 bat 脚本,macOS 、Linux 环境编写的 sh 脚本
可以翻翻里面的脚本文件,好使👌
1
geelaw 2023-09-13 10:37:22 +08:00 via iPhone
我应该提示一下使用托管代码写密码算法是不宜在生产中使用的,因为无法精准控制密钥何时从内存中删除(垃圾回收算法可能会随意搬动和复制内存数据,所以仅仅是清空或覆写数组是无意义的)。
|
2
dearxe2v OP @geelaw 哈,这个知识点超纲了哈,不过当内存中的数据如果有比较大的泄露风险时,那本地磁盘上数据只会更不安全,比如 ngnix 里面配置的 rsa 证书密钥,程序中的支付证书密钥,往往是明文存储在本地或硬编码在程序里面。这两库对密钥的使用和其他大部分调用 RSA 的代码差不多,只是封装了一下,和大部分普通程序一样(支付调用示例程序),对密钥在服务器内存中是否安全并没有考虑;如果安全性要求很高,那应当从头设计编写符合安全需求的 RSA 加密程序,包括密钥如何安全的存取,得加钱😆
|
3
geelaw 2023-09-13 11:15:56 +08:00
@dearxe2v #2 这种归约式论证不成立。
考虑 A 使用 B 的公钥加密刚刚通过键盘输入的数据,此时加密算法的随机数和明文并不来自于磁盘,如果使坏者得到了此随机数,则此密文丧失安全性,A 当然希望在加密算法运行完毕后从内存里删除随机数和明文。 另外,内存可能是主动发给外界,而不是被窃听的,例如调试崩溃记录的时候,当然希望内存转储里敏感信息越少越好。 题外话:RSA 加密已经不怎么实用了,主要是安全性弱带来的性能问题。 |
4
toexplore 2023-09-13 13:55:09 +08:00
gettext ??
|