3532|4

43

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

SiRiderS1芯擎工业开发板测评2防止黑客入侵盗用操控劫持篡改摄像头&OpenSSL加密解密 [复制链接]

邀请:@chenzhufly   @skywalker_lee   @wsdymg   @bigbat   参与回复

接上篇:

 

SiRider S1芯擎工业开发板测评+1.防止黑客入侵通信监控系统(PSA) https://bbs.eeworld.com.cn/thread-1293107-1-1.html

在SiRider S1芯擎工业开发板这个充满智慧与神秘力量的世界里,openssl 就像是那位无所不能的魔法师,掌握着加密与解密、证书生成与管理等种种神秘法术。不过,别担心,即使你不是哈利波特,我也能用一种既幽默又易懂的方式,带你走进openssl的奇幻之旅。

第一步:打开你的“魔法终端”,召唤openssl魔法师

首先,你得确保你的SiRider S1芯擎工业开发板里已经住着这位魔法师。打开你的终端(Terminal)你需要打开那个充满神秘力量的“魔法终端”。别担心,它不会把你变成青蛙,只会让你变得更加强大。在SiRider S1芯擎工业开发板中,你可以通过简单地按下Ctrl + Alt + T来召唤它,那扇通往神秘世界的门,然后输入以下咒语(命令):

sudo apt update && sudo apt install openssl

这条咒语的意思是:“哦,伟大的软件包管理器,请更新你的知识库,并赐予我openssl的力量吧!”

 

 

第二步:探索openssl的魔法书

安装完成后,openssl的魔法书(手册)就摆在你面前了。不过,直接阅读整本书可能会让你眼花缭乱。别担心,我们可以先学会几个简单的咒语来热身。

 

 

咒语一:生成密钥

openssl genpkey -algorithm RSA -out key.pem

 

 

这个咒语的意思是:“哦,openssl,用你的魔法为我生成一把RSA密钥,并把它保存在key.pem这个魔法石里吧!”

 

 

咒语二:创建证书请求

openssl req -new -key key.pem -out req.pem

这个咒语稍微复杂点:“嘿,openssl,用我给你的密钥key.pem,帮我写一封证书请求信req.pem,我得拿去给证书颁发机构(CA)盖章。”

 

 

咒语三:自签名证书

如果你等不及CA的回复,或者只是想自己玩玩,可以:

openssl x509 -req -days 365 -in req.pem -signkey key.pem -out cert.pem

这就像是:“openssl,我知道你很急,但请先用我的密钥给我的证书请求信req.pem签个名,有效期一年,然后保存在cert.pem里吧!”

 

 

第三步:施展你的魔法

现在,你已经掌握了几个基本的openssl咒语,可以开始在你的SiRider S1芯擎工业开发板世界里施展魔法了。无论是保护你的数据传输,还是验证服务器的身份,openssl都是你的得力助手。希望这次openssl的奇幻之旅能让你笑得合不拢嘴,同时也学到了不少有用的知识!当然,亲爱的冒险家,让我们继续踏上一段充满欢笑与智慧的旅程,一起探索如何在SiRider S1芯擎工业开发板这个神秘而强大的开发板中,使用命令行和随机数来生成密钥和初始化向量,就像是我们在古老的魔法书中寻找失落的咒语一样!

 

 

第四步:呼唤随机数之神

现在,你已经站在了命令行的神秘世界前。为了生成密钥和初始化向量,我们需要召唤随机数之神——别担心,他不是真正的神,但openssl这个工具在加密界可是个不折不扣的大佬。

第五步:生成密钥,就像变魔术一样

想象一下,你的手中突然出现了一把闪闪发光的钥匙(当然是虚拟的),这就是我们的密钥!要使用openssl生成一个2048位的RSA密钥对(这听起来就像是打开了通往宝藏的大门),你可以这样做:

openssl genpkey -algorithm RSA -out private_key.pem -pkeyopt rsa_keygen_bits:2048
# 然后,为了得到公钥,我们还需要执行:
openssl rsa -pubout -in private_key.pem -out public_key.pem

这些命令就像是在说:“嘿,随机数之神,请给我一把强大的钥匙,让我能够安全地守护我的宝藏!”

 

 

第六步:初始化向量,为加密之旅增添方向

接下来,我们需要一个初始化向量(IV),它就像是加密之旅中的指南针,确保我们的加密之旅不会迷失方向。使用openssl生成一个随机的IV也非常简单:

openssl rand -hex 16 > iv.hex

这条命令就像是说:“随机数之神啊,请给我一段16字节的随机十六进制数,作为我加密之旅的指南针!”

 

 

第七步:庆祝你的成就!

恭喜你,你现在已经拥有了强大的密钥和指引方向的初始化向量!就像是一个勇敢的骑士,你已经准备好了去守护你的宝藏,或者至少是加密你的数据了。希望这段旅程能让你在SiRider S1芯擎工业开发板的命令行世界中感到既有趣又充满成就感。记住,每一次使用命令行都像是在施展魔法,而openssl就是那个最强大的魔法咒语之一。继续探索吧,冒险家,更多的魔法等待着你去发现!

 

 

“列举”OpenSSL的全部指令可能是个挑战,因为OpenSSL实际上拥有大量的命令和选项,几乎可以写成一本笑话集那么长。不过,可以尝试用几个“代表性”的指令加上一些注释来给你增强印象:

  1. openssl version - 想知道你的OpenSSL是不是最新的?就像问朋友:“嘿,你更新到最新版本的OpenSSL了吗?还是说你还在用石器时代的加密技术?”

 

 

  1. openssl genrsa - 生成RSA私钥?这就像是给你的数据找个超级保镖,强壮到连量子计算机都破解不了(好吧,至少现在还不行)。
  2. openssl req - 生成证书签名请求(CSR)?这就像是你想进入加密界的高级俱乐部,但需要填写一份超级详细的申请表,包括你的公钥、名字、地址,还有“你为什么想加入这个加密帮”的理由。

 

 

  1. openssl x509 - 处理X.509证书?这是加密界的身份证,证明你是你,不是别人冒充的。就像带着一张“我不是黑客,我发誓”的证书去参加黑客大会。
  2. openssl enc - 加密和解密数据?这就像是给你的秘密信息穿上隐形斗篷,除了你和持有解密钥匙的人,没人能看懂。当然,如果你忘了钥匙放在哪里,那就变成永恒的秘密了。

 

 

  1. openssl dgst - 计算数据的摘要?这就像是对你的数据进行指纹扫描,确保它在传输过程中没有被篡改。如果有人动了手脚,指纹就会对不上,就像你的猫突然变成了狗一样明显。
  2. openssl s_client - 模拟SSL/TLS客户端?这是黑客和开发者们的秘密武器,可以用来测试SSL服务器的安全性,就像是你拿着放大镜在找服务器的安全漏洞。
  3. openssl s_server - 模拟SSL/TLS服务器?如果你想知道你的服务器在黑客眼中是什么样子的,那就用这个命令吧。不过记得穿上防弹衣,因为结果可能会让你大吃一惊。

 

 

  1. openssl passwd - 生成加密密码?这就像是把你的密码藏在一个只有你和你的密码管理器知道的保险箱里。当然,如果你把保险箱的钥匙也忘了,那就只能祈求好运了。
  2. openssl dhparam - 生成Diffie-Hellman参数?这是加密界的高级魔法,让两个从未见过面的人能够安全地共享一个秘密密钥,就像是通过魔法传递秘密纸条一样。

 

 

当然,这只是OpenSSL众多功能中的一小部分,但希望这能让你在了解OpenSSL的过程中感到一丝乐趣!
在SiRider S1芯擎工业开发板的广阔世界里,openssl这个命令就像是超级英雄的秘密武器库,里面藏着无数神奇的指令,能让你的加密解密之旅变得既刺激又充满乐趣(当然,如果你是个技术宅,可能觉得这是“日常乐趣”)。不过,别担心,我会用幽默搞笑的方式,带你一窥这个神秘世界的奥秘。

继续实践:进入OpenSSL的奇幻世界

想象一下,你是一位勇敢的探险家,手握一张古老的地图,上面标记着通往“OpenSSL指令宝藏”的秘密路径。Ubuntu,就是那片充满未知与奇迹的大陆,而openssl,就是那把能打开所有加密宝箱的万能钥匙。

第一站:生成密钥对

首先,我们要学习如何制作一对“金钥匙”和“银钥匙”。在OpenSSL的世界里,这叫做生成密钥对。

openssl genpkey -algorithm RSA -out private_key.pem -pkeyopt rsa_keygen_bits:2048
openssl rsa -pubout -in private_key.pem -out public_key.pem

幽默解释

  • genpkey:这是你的“金钥匙铸造机”,它说:“给我一些材料(RSA算法),我要造把金钥匙(私钥)!”
  • -pkeyopt rsa_keygen_bits:2048:这是告诉铸造机的:“金钥匙要结实点,给我2048个金粒子!”
  • rsa -pubout:这是“金钥匙”的变身术,说:“金钥匙,变个身,成为银钥匙(公钥)给世人看吧!”

 

 

第二站:加密与解密

有了金钥匙和银钥匙,我们就可以玩加密解密的游戏了。

echo "Hello, OpenSSL!" | openssl rsautl -encrypt -pubin -inkey public_key.pem -out encrypted.bin
openssl rsautl -decrypt -inkey private_key.pem -in encrypted.bin

幽默解释

  • echo ... | openssl rsautl -encrypt:这是你的“加密魔法棒”,它说:“嘿,银钥匙,帮我把这句悄悄话(Hello, OpenSSL!)变成只有金钥匙能听懂的秘密语言!”
  • -decrypt:这是“解密咒语”,金钥匙说:“让我听听那秘密语言说了啥。”

第三站:签名与验证

 

 

签名就像是给你的信息盖个“官方认证”的章,让别人知道这是你说的话,而且没被篡改。

echo "This is important!" > message.txt
openssl dgst -sha256 -sign private_key.pem -out signature.bin message.txt
openssl dgst -sha256 -verify public_key.pem -signature signature.bin message.txt

幽默解释

  • dgst -sha256 -sign:这是你的“签名神器”,它说:“金钥匙,用你的力量,在这句话上盖上你的指纹(SHA256哈希值),然后签名!”
  • -verify:这是“验明正身”的魔法,银钥匙说:“让我看看这指纹和签名,确认这确实是金钥匙的杰作。”

恭喜你,你已经完成了OpenSSL指令的“初级探险家”课程!现在你不仅掌握了生成密钥、加密解密、签名验证等基本技能,还学会了如何用幽默的眼光看待这些复杂的操作。记住,技术虽枯燥,但你的想象力可以让它变得生动有趣。继续你的探险之旅吧,SiRider S1芯擎工业开发板的加密世界还有更多宝藏等着你去发现!
除了加密解密还要Cheese:
亲爱的朋友,让我们一起踏上一段关于在SiRider S1芯擎工业开发板中使用Cheese这个神奇应用的奇妙旅程,我会尽量让这趟旅程充满欢笑和趣味!

 

 

想象一下,你是一位勇敢的探险家,而你的任务是深入SiRider S1芯擎工业开发板的丛林,寻找那传说中的“Cheese”——一个能让你的自拍技术瞬间飙升到宇宙级别的神秘宝藏!

第一幕:踏入SiRider S1芯擎工业开发板的神秘领域

首先,你得打开你的SiRider S1芯擎工业开发板大门(其实就是启动你的SiRider S1芯擎工业开发板啦)。一旦进入这片充满代码与自由的土地,你就仿佛置身于一个由代码守护的奇幻世界。别担心,这些代码都是友好的技术宅,它们正忙着为你准备一场自拍盛宴呢!

第二幕:寻找Cheese的踪迹

现在,你需要找到Cheese的线索。在SiRider S1芯擎工业开发板的世界里,所有工具都藏在这个巨大的宝箱里。打开它,就像打开阿拉丁的神灯一样,只需轻轻一点,无数神奇的应用就会展现在你眼前。然后唤醒Cheese的潜力(尽管它可能还在打盹),你需要确保Cheese已经安装在你的SiRider S1芯擎工业开发板上了。如果还没有,我们可以用一个叫做“apt”(一个自动包装工具,听起来像是给软件送礼物的魔法师)的命令行工具来安装它。打开你的终端(那个看起来像黑洞的窗口),然后输入以下命令:

sudo apt update && sudo apt install cheese

这条命令就像是对Cheese说:“嘿,Cheese,我们知道你藏在SiRider S1芯擎工业开发板的魔法箱子里,快出来晒晒太阳吧!”

 

 

“Cheese!”你兴奋地喊道,就像发现了新大陆。没错,它就在那里,静静地等待着你的召唤。就像施展了魔法,Cheese立刻融入了你的SiRider S1芯擎工业开发板世界。

第三幕:Cheese的自拍魔法

安装完成后,打开Cheese,你仿佛打开了自拍界的潘多拉魔盒。但别担心,这里只有惊喜,没有灾难。Cheese的界面是如此简洁明了,连最害羞的菜鸟都能轻松上手。用命令行间接召唤Cheese。
Cheese是个GUI应用,它并不直接响应命令行命令来拍照或录像。不过,我们可以使用一点小技巧:通过命令行来启动Cheese这个程序。这就像是给Cheese发了一封电子邮件,邀请它参加你的照片派对。

 

 

在终端中输入:

cheese

然后,你会看到Cheese的窗口像变魔术一样出现了!

  • 特效镜头:Cheese提供各种搞怪的滤镜和特效,比如让你瞬间变成复古电影明星,或是让你的脸被各种可爱的动物头像包围。就像你在参加一场宇宙级的化妆舞会,每个镜头都是一次变身的机会。
  • 定时自拍:忘了邀请朋友帮忙拍照?没问题!Cheese的定时自拍功能就像是你的私人摄影师,你只需要摆好姿势,剩下的就交给它了。

 

 

  • 视频录制:不仅仅是拍照,Cheese还能让你录制视频,记录下你的每一个搞笑瞬间。想象一下,当你对着镜头做鬼脸,Cheese正默默记录着这一切,准备让你的朋友们捧腹大笑。

第四幕:分享你的杰作

完成了一系列自拍和视频录制后,是时候向世界展示你的才华了!Cheese允许你直接将作品分享到社交媒体上,让你的朋友们都能感受到你的幽默和创意。记得给你的作品加上最有趣的标题和标签,让它们成为网络上的热门话题吧!

 


就这样,在SiRider S1芯擎工业开发板的世界里,你不仅找到了Cheese这个自拍神器,还经历了一场充满欢笑和惊喜的冒险。现在,你已经准备好成为自拍界的巨星了!记得多拍几张照片,让快乐永远留在你的SiRider S1芯擎开发板之中!

常用 OpenSSL 指令

  1. 密钥生成与管理

    • genrsa:生成 RSA 私钥。
    • rsa:RSA 密钥管理工具,用于从私钥中提取公钥、转换密钥格式等。
    • ecparam:椭圆曲线参数管理工具,用于生成椭圆曲线密钥对。

  1. 证书和证书签名请求 (CSR)

    • req:生成证书签名请求 (CSR)。
    • x509:X.509 证书管理工具,用于生成自签名证书、显示证书信息等。
    • ca:CA 管理工具,用于对证书签名请求进行签名,生成由 CA 签发的证书。
  2. 加密与解密

    • enc:对称加密算法工具,能够对数据进行加密和解密。
    • rsautl:RSA 工具,用于完成 RSA 签名、验证、加密和解密功能。

 

 

  1. 摘要与验证

    • dgst:生成信息摘要,支持多种摘要算法(如 MD5、SHA-256 等)。
    • verify:验证 X.509 证书的有效性。

 

 

  1. SSL/TLS 测试

    • s_client:通用的 SSL/TLS 客户端测试工具,用于连接到 SSL/TLS 服务器。
    • s_server:通用的 SSL/TLS 服务器测试工具,用于提供 SSL/TLS 服务。
  2. 其他

    • version:显示 OpenSSL 的版本信息。

 

 

  • ciphers:列出 OpenSSL 支持的加密套件。
  • rand:生成伪随机数。
  • passwd:生成散列密码。
  • pkcs7pkcs8pkcs12:PKCS#7、PKCS#8 和 PKCS#12 数据管理工具。

 

 

注意事项

  • 由于 OpenSSL 的指令和功能非常丰富,上述列表只包含了一些常用的和基本的指令。
  • OpenSSL 的指令通常具有多种选项和参数,可以通过 openssl command -help 来查看特定指令的详细帮助信息。
  • OpenSSL 的版本更新可能会引入新的指令或废弃旧的指令,因此建议查阅最新的 OpenSSL 文档或手册以获取最准确的信息。

 

 

希望这些经验能对您有所帮助!

 

SiRider S1芯擎工业开发板测评+1.防止黑客入侵通信监控系统(PSA) https://bbs.eeworld.com.cn/thread-1293107-1-1.html

 

防止黑客病毒入侵智能汽车远程开车锁车2【换道赛车:新能源汽车的中国道路 | 阅读... https://bbs.eeworld.com.cn/thread-1274682-1-1.html

 

防止AI大模型被黑客病毒入侵控制(原创)聆思大模型AI开发套件评测4 https://bbs.eeworld.com.cn/thread-1274896-1-1.html

 

【星嵌电子XQ138F-EVM开发板体验】(原创)7.硬件加速Sora文生视频源代码 https://bbs.eeworld.com.cn/thread-1272724-1-1.html

 

《了不起的芯片》阅读活动13第六章——早期的中国半导体产业 https://bbs.eeworld.com.cn/thread-1266502-1-1.html

 

《了不起的芯片》阅读活动12第五章慎终如始——芯片封装与测试 https://bbs.eeworld.com.cn/thread-1263743-1-1.html

 

《了不起的芯片》阅读活动11第四章 https://bbs.eeworld.com.cn/thread-1258193-1-1.html

 

上手STM32L432 Nucleo-32 (四)I2C接口设置 https://bbs.eeworld.com.cn/thread-1258190-1-1.html

 

上手STM32L432 Nucleo-32 (三)ADC https://bbs.eeworld.com.cn/thread-1258153-1-1.html

 

谢谢!

还没吃饭中志愿者
2024年9月12日

最新回复

学习了,好文章,内容讲解详细,非常不错,谢谢你。   详情 回复 发表于 2024-10-25 15:01
点赞 关注

回复
举报

6587

帖子

0

TA的资源

五彩晶圆(高级)

沙发
 

生成密钥对还是比较神奇的


点评

还是你说得对!  详情 回复 发表于 2024-9-16 08:40
 
 

回复

43

帖子

0

TA的资源

一粒金砂(中级)

板凳
 
Jacktang 发表于 2024-9-15 08:51 生成密钥对还是比较神奇的

还是你说得对!

 
 
 

回复

63

帖子

0

TA的资源

禁止发言

4
 

学习了,好文章,内容讲解详细,非常不错,谢谢你。

点评

没事!    谢谢!  详情 回复 发表于 2024-10-29 21:45
 
 
 

回复

43

帖子

0

TA的资源

一粒金砂(中级)

5
 
zshasd1948 发表于 2024-10-25 15:01 学习了,好文章,内容讲解详细,非常不错,谢谢你。

没事!

   谢谢!

 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表