在 CentOS 上对 AppImage 进行签名,通常是指使用 GPG 对 AppImage 文件做数字签名,以便用户验证来源和完整性。下面给出完整操作步骤。
sudo yum install -y gpg
如果系统较老,也可以启用 EPEL:
sudo yum install -y epel-release
gpg --full-generate-key
按提示选择:
查看生成的密钥:
gpg --list-keys
AppImage 官方支持 内嵌 GPG 签名。
gpg 直接签名(推荐方式)假设你的 AppImage 文件是:
myapp-x86_64.AppImage
执行:
gpg --output myapp-x86_64.AppImage.sig \
--detach-sign myapp-x86_64.AppImage
生成:
myapp-x86_64.AppImagemyapp-x86_64.AppImage.sig用户验证时:
gpg --verify myapp-x86_64.AppImage.sig myapp-x86_64.AppImage
如果你希望签名“嵌入” AppImage 内部:
wget https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-x86_64.AppImage
chmod +x appimagetool-x86_64.AppImage
./appimagetool-x86_64.AppImage --sign myapp-x86_64.AppImage
该方式会:
验证:
./myapp-x86_64.AppImage --appimage-verify
gpg --export -a "你的名字或邮箱" > public.key
用户导入:
gpg --import public.key
CentOS 7/8 默认 GPG 版本较低
gnupg2yum install gnupg2
桌面环境
发布建议
.sig 文件和公钥gpg --fingerprint
| 方式 | 命令 |
|---|---|
| 分离签名 | gpg --detach-sign xxx.AppImage |
| 内嵌签名 | appimagetool --sign xxx.AppImage |
| 验证 | gpg --verify 或 --appimage-verify |
如果你愿意,我可以:
只要告诉我你的 CentOS 版本即可。