PS D:\projects\ecpcb\galaxy-core> git-crypt init
Generating key…
这个命令会在项目中创建一个git-crypt
目录,在windows power shell 下面会生成.git\git-crypt\keys用于存储git-crypt
的配置和密钥信息。如果你进入到.git\git-crypt\keys 目录中你可以看到默认的key文件,如下图示:
配置Git-Crypt
然后在项目文件根目录下创建.gitattributes ,指定需要加密哪些文件。下面的配置为自动加解密.secrets 文件下的所有文件
Do not edit this file. To specify the files to encrypt, create your own
.gitattributes file in the directory where your files are.
- !filter !diff
.secrets/** filter=git-crypt diff=git-crypt
*.gpg binary
加密之前需要将对称加密的密匙导出到其他文件,以便于后面解密。
git-crypt export-key …/git-crypt-key
然后在根目录下创建.secrets文件夹,并创建一个passwd文件测试一下,如下图所示。
运行加解密命令
需要加密文件添加完毕之后,然后 运行
git add . | git commit -m ‘git-crypt test’
此时如果你push 到github 代码库就会发现文件被自动加密了。
点击view raw 会自动下载加密过的文件,可以打开看看其实是已经加密的文件了。
虽然push 到github 上已经是加密过的文件了,但本地代码当前状态还是未加密的状态,可以使用git-crypt lock 就会给本地的代码也加密了。如下图:
如果想看明文,可以使用如下命令解密成明文,参数是之前导出的密匙的位置。
git-crypt unlock …\git-crypt-key
结果如下图:
总的来说git-crypt是使用对称加密来加解密git仓库中的文件以隐藏代码库中的敏感信息。简单的项目可以直接通过共享密匙来达到日常的代码敏感信息的加解密。如果Team人数比较多,那么密匙就有可能被无意扩散出去,导致密匙泄露。后面会讲解如何结合GPG, 通过增加个人的GPG密匙来分发加密解密权限。
使用Git-Crypt和GPG加密Git代码库中的敏感信息(二)
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数网络安全工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年网络安全全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上网络安全知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加VX:vip204888 (备注网络安全获取)
写在最后
在结束之际,我想重申的是,学习并非如攀登险峻高峰,而是如滴水穿石般的持久累积。尤其当我们步入工作岗位之后,持之以恒的学习变得愈发不易,如同在茫茫大海中独自划舟,稍有松懈便可能被巨浪吞噬。然而,对于我们程序员而言,学习是生存之本,是我们在激烈市场竞争中立于不败之地的关键。一旦停止学习,我们便如同逆水行舟,不进则退,终将被时代的洪流所淘汰。因此,不断汲取新知识,不仅是对自己的提升,更是对自己的一份珍贵投资。让我们不断磨砺自己,与时代共同进步,书写属于我们的辉煌篇章。
需要完整版PDF学习资源私我
一个人可以走的很快,但一群人才能走的更远。如果你从事以下工作或对以下感兴趣,欢迎戳这里加入程序员的圈子,让我们一起学习成长!
AI人工智能、Android移动开发、AIGC大模型、C C#、Go语言、Java、Linux运维、云计算、MySQL、PMP、网络安全、Python爬虫、UE5、UI设计、Unity3D、Web前端开发、产品经理、车载开发、大数据、鸿蒙、计算机网络、嵌入式物联网、软件测试、数据结构与算法、音视频开发、Flutter、IOS开发、PHP开发、.NET、安卓逆向、云计算
SQL、PMP、网络安全、Python爬虫、UE5、UI设计、Unity3D、Web前端开发、产品经理、车载开发、大数据、鸿蒙、计算机网络、嵌入式物联网、软件测试、数据结构与算法、音视频开发、Flutter、IOS开发、PHP开发、.NET、安卓逆向、云计算**