使用Git-Crypt和GPG加密Git代码库中的敏感信息(二)

这篇具有很好参考价值的文章主要介绍了使用Git-Crypt和GPG加密Git代码库中的敏感信息(二)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

首先获取当前机器的GPG 公钥列表

PS C:\Users\David> gpg --list-keys --keyid-format=long [keyboxd]

pub rsa1024/B26A154E6EE71E72 2024-02-20 [SC] [expires: 2034-02-17]
96964DABF5A3A10BE371FB34B26A154E6EE71E72
uid [ultimate] David Wang davidwang@gmail.com
sub rsa1024/C1305211C9667A9E 2024-02-20 [E] [expires: 2034-02-17]

然后在代码从仓库根目录运行如下命令

git-crypt add-gpg-user B26A154E6EE71E72

这个命令会在根目录下创建一个使用keyid匹配的GPG 公钥加密git-crypt init产生的用于加解密代码仓库敏感信息的对等密匙产生的文件。这里有两层密钥,第一层是git-crypt init产生的密钥,这是一个对等密匙,用于加解密仓库敏感信息,第二层密钥是GPG 公钥,上面的命令使用GPG公钥加密第一层git-crypt init命令产生的密钥,将加密后的密钥内容保存成文件。效果如下图所示。

使用Git-Crypt和GPG加密Git代码库中的敏感信息(二),2024年程序员学习,git

这样,下次使用git-crypt unlock 解密的时候,就不用传密钥文件参数给git-crypt unlock命令了,git-crypt 会自动遍历根目录下.git-crypt目录下的密钥文件,并尝试比对看本机有没有安装相对应的GPG私钥来解密这个.git-crypt目录下的密钥文件以获得GPG公钥加密后的git-crypt的对等加密密钥,如果本机有对应GPG私钥可以解密,然后就使用GPG私钥解密加密后的密钥文件获取git-crypt 密钥,然后使用git-crypt密钥加解密代码仓库中的加密过的敏感信息文件。如下所示。

先测试加密

使用Git-Crypt和GPG加密Git代码库中的敏感信息(二),2024年程序员学习,git

在测试解密

使用Git-Crypt和GPG加密Git代码库中的敏感信息(二),2024年程序员学习,git

输入私钥密码后

使用Git-Crypt和GPG加密Git代码库中的敏感信息(二),2024年程序员学习,git

可以看到通过添加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公钥用户会报错

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数大数据工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年大数据全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
使用Git-Crypt和GPG加密Git代码库中的敏感信息(二),2024年程序员学习,git
使用Git-Crypt和GPG加密Git代码库中的敏感信息(二),2024年程序员学习,git
使用Git-Crypt和GPG加密Git代码库中的敏感信息(二),2024年程序员学习,git
使用Git-Crypt和GPG加密Git代码库中的敏感信息(二),2024年程序员学习,git
使用Git-Crypt和GPG加密Git代码库中的敏感信息(二),2024年程序员学习,git

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上大数据开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加VX:vip204888 (备注大数据获取)
使用Git-Crypt和GPG加密Git代码库中的敏感信息(二),2024年程序员学习,git

义、实战项目、讲解视频,并且后续会持续更新**

如果你觉得这些内容对你有帮助,可以添加VX:vip204888 (备注大数据获取)
[外链图片转存中…(img-MygRjKDU-1712553096988)]文章来源地址https://www.toymoban.com/news/detail-849605.html

到了这里,关于使用Git-Crypt和GPG加密Git代码库中的敏感信息(二)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【微信小程序】使用iView组件库中的icons资源

    要在微信小程序中使用 iView 组件库中的 icons 资源,需要先下载并引入 iView 组件库,并按照 iView 的文档进行配置和使用。 以下是一般的使用步骤: 下载 iView 组件库的源码或使用npm安装 iView 。 在小程序项目的 app.json 文件中添加 iView 组件库的引入配置: 其中, /path/to/iView

    2024年02月16日
    浏览(47)
  • AI机器学习 | 基于librosa库和使用scikit-learn库中的分类器进行语音识别

    专栏集锦,大佬们可以收藏以备不时之需 Spring Cloud实战专栏:https://blog.csdn.net/superdangbo/category_9270827.html Python 实战专栏:https://blog.csdn.net/superdangbo/category_9271194.html Logback 详解专栏:https://blog.csdn.net/superdangbo/category_9271502.html tensorflow专栏:https://blog.csdn.net/superdangbo/category_869

    2024年02月05日
    浏览(45)
  • Java学数据结构(3)——树Tree & B树 & 红黑树 & Java标准库中的集合Set与映射Map & 使用多个映射Map的案例

    1.B树,阶M,数据树叶上,根的儿子数在2和M之间,除根外,非树叶节点儿子为M/2和M之间; 2.B树的插入引起分裂,B树的删除,引起合并和领养; 3.红黑树,根是黑的,红色节点的儿子必须是黑的,所有路径的黑色节点数相同; 4.红黑树的插入,颜色翻转,单旋转,插入节点定

    2024年02月11日
    浏览(79)
  • C++STL库中的list

    文章目录 list的介绍及使用 list的常用接口 list的模拟实现 list与vector的对比 1. list是可以在常数范围内在任意位置进行插入和删除的序列式容器,并且该容器可以前后双向迭代。 2. list的底层是双向带头循环链表结构,双向带头循环链表中每个元素存储在互不相关的独立节点中

    2024年02月15日
    浏览(31)
  • Eigen库中的Identity()函数作用

    今天学习Eigen库,看到示例代码中有这样一行: Matrix3d: Eigen库中typedef的数据类型,即“3*3矩阵(d表示矩阵内部数据类型为double类型)” rotation_matrix: 该3*3矩阵的变量名 Matrix3d::Identity() :在定义该矩阵变量时,创建一个同尺寸同数据类型的 单位阵 ,对其初始化。

    2024年02月11日
    浏览(31)
  • RSA 加密算法在C++中的实现 面向初学者(附代码)

    博文的 一,二部分 为 基础知识 的铺垫。分别从 密码学,数论 两个方面为理解RSA算法做好了准备。 第三部分 是对RSA加密过程的具体介绍,主要涉及其 密钥对(key-pair)的获取 。前三个部分与编程实践无关,可以当作独立的关于RSA加密算法的介绍。 第四部分 开始介绍在 编

    2024年01月21日
    浏览(64)
  • Github库中的Languages显示与修改

    目录 前言 【.gitattributes】文件 修改GitHub语言 上传一个项目到GitHub时,发现显示的语言并非是自己项目所示的语言,这样的情况是经常发生的,为了能到达自己所需快速检索,或者是外部访问者能很好的搜索我们的项目,所以我们有必要修改一下语言,github并不支持项目语言

    2023年04月09日
    浏览(27)
  • transformers库中的.from_pretrained()

    在跑 Faspect 代码时,对 transformer 系列的预训练模型加载方式比较好奇,因此记录 在使用 Huggingface 提供的 transformer 系列模型时,会通过 model.from_pretrained 函数来加载预训练模型。 from_pretrainde 函数原型为 对加载预训练模型地址的介绍 pretrained_model_name_or_path : 一个字符串,模型

    2024年02月16日
    浏览(40)
  • git如何切换到已有分支(切换到远程库中已有分支)

    1、先查看本地分支,可以看到目前位于 master 分支,本地另外一个分支是 dev 2、切换到dev分支 通过 git branch 可以看到目前位于dev分支了 1、查看远程库中已有分支,从图中找到自己想要切换的分支名。( remotes/origin/dev , remotes 表示是远程库, origin 表示远程库的名字, dev 表

    2024年02月11日
    浏览(39)
  • C++ 库中的 libssh 和 libssh2

    在 Linux 上,SSH 是一种非常常用的远程登录协议。除了使用 ssh 命令行工具之外,我们还可以在 C++ 程序中使用 SSH 客户端库来实现远程登录和文件传输等功能。本文就来介绍两个常用的 C++ SSH 客户端库:libssh 和 libssh2。 libssh 是一个轻量级的 SSH 客户端库,可用于在 C++ 程序中

    2024年02月12日
    浏览(36)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包