这样,下次使用git-crypt unlock 解密的时候,就不用传密钥文件参数给git-crypt unlock命令了,git-crypt 会自动遍历根目录下.git-crypt目录下的密钥文件,并尝试比对看本机有没有安装相对应的GPG私钥来解密这个.git-crypt目录下的密钥文件以获得GPG公钥加密后的git-crypt的对等加密密钥,如果本机有对应GPG私钥可以解密,然后就使用GPG私钥解密加密后的密钥文件获取git-crypt 密钥,然后使用git-crypt密钥加解密代码仓库中的加密过的敏感信息文件。如下所示。
先测试加密
在测试解密
输入私钥密码后
可以看到通过添加GPG user之后使用git-crypt unlock命令之后,不用传密钥文件参数来解密了。
git-crypt 添加新GPG公钥用户
通过这样的方式如果想要别人也有使用git-crypt 加解密仓库中的敏感信息,就可以让别人发送他的GPG公钥给你,然后你把对方的公钥导入到你机器上,然后通过git-crypt add-gpg-user 来使用它的gpg文件来加密git-crypt 密钥并在.git-crypt 文件生成一个加密密钥文件并提交push到远程代码仓库,这样别人在本地重新拉取代码后就也可以使用git unlock命令解密代码库中的敏感信息了,因为.git-crypt目录下包含了使用它的gpg 加密git-crypt密钥生成的加密密钥文件,而它本机装有自己的GPG私钥,所以git-crypt unlock 的时候就可以使用它自己的gpg 解密加密密钥文件获取git-crypt 密钥然后解密仓库敏感信息了,具体操作步骤如下。
导入别人GPG公钥
PS D:\projects\ecpcb\galaxy-core> gpg --import .\davidpub2.asc
gpg: key 9C796163E291AF14: public key "david.wang <davidwang@gmail.com>" imported
gpg: Total number processed: 1
gpg: imported: 1
PS D:\projects\ecpcb\galaxy-core>
此时再看本机GPG 公钥列表
PS D:\projects\ecpcb\galaxy-core> gpg --list-keys --keyid-format long
[keyboxd]
---------
pub rsa1024/B26A154E6EE71E72 2024-02-20 [SC] [expires: 2034-02-17]
96964DABF5A3A10BE371FB34B26A154E6EE71E72
uid [ultimate] David Wang <davidwangqing@live.com>
sub rsa1024/C1305211C9667A9E 2024-02-20 [E] [expires: 2034-02-17]
pub rsa2048/9C796163E291AF14 2024-03-04 [SC]
F49C56FF5264AB5CF5F6A3E09C796163E291AF14
uid [ unknown] david.wang <davidwang@gmail.com>
sub rsa2048/7793195898DF2C11 2024-03-04 [E]
PS D:\projects\ecpcb\galaxy-core>
设置你对导入的GPG公钥的信任级别到ultimately , 不然git-crypt 添加GPG公钥用户会报错
PS D:\projects\ecpcb\galaxy-core> gpg --edit-key 9C796163E291AF14
gpg (GnuPG) 2.4.4; Copyright (C) 2024 g10 Code GmbH
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
pub rsa2048/9C796163E291AF14
created: 2024-03-04 expires: never usage: SC
trust: full validity: unknown
sub rsa2048/7793195898DF2C11
created: 2024-03-04 expires: never usage: E
[ unknown] (1). david.wang <davidwang@gmail.com>
gpg> trust
pub rsa2048/9C796163E291AF14
created: 2024-03-04 expires: never usage: SC
trust: full validity: unknown
sub rsa2048/7793195898DF2C11
created: 2024-03-04 expires: never usage: E
[ unknown] (1). david.wang <davidwang@gmail.com>
Please decide how far you trust this user to correctly verify other users' keys
(by looking at passports, checking fingerprints from different sources, etc.)
1 = I don't know or won't say
2 = I do NOT trust
3 = I trust marginally
4 = I trust fully
5 = I trust ultimately
m = back to the main menu
Your decision? 5
Do you really want to set this key to ultimate trust? (y/N) y
pub rsa2048/9C796163E291AF14
created: 2024-03-04 expires: never usage: SC
trust: ultimate validity: unknown
sub rsa2048/7793195898DF2C11
created: 2024-03-04 expires: never usage: E
[ unknown] (1). david.wang <davidwang@gmail.com>
Please note that the shown key validity is not necessarily correct
unless you restart the program.
gpg> quit
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数大数据工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年大数据全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上大数据开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加VX:vip204888 (备注大数据获取)
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
img-CtBn5uaO-1713107315168)]
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!