deb 패키지에 연결된 서명이 있는지 확인하는 방법은 무엇입니까?

deb 패키지에 연결된 서명이 있는지 확인하는 방법은 무엇입니까?

rpm 기반 시스템에서는 rpm 파일과 관련된 서명이 있는지 쉽게 확인할 수 있습니다.

rpm -qpi <rpm-file.rpm> | grep -i signature

.deb 파일의 경우 패키지 정보를 볼 수 있지만 서명이 연결되어 있는지에 대한 정보는 포함되지 않습니다.

dpkg-deb -I uma-18feb-latest.deb

실제로 서명을 확인하는 다음 명령을 사용하지 않고 Ubuntu에서 서명을 볼 수 있는 방법이 있습니까?

dpkg-sig --verify <deb-file.deb>

답변1

dpkg-sig --list <deb-file.deb>

서명처럼 보이는 파일의 모든 항목은 파일을 확인하지 않고 나열됩니다. 그러면 파일에 있는 모든 서명의 역할이 나열됩니다.예를 들어

$ dpkg-sig -l vuescan_9.7.50-1_amd64.deb
Processing vuescan_9.7.50-1_amd64.deb...
builder
$ dpkg-sig -l zstd_1.4.8+dfsg-2.1_i386.deb
Processing zstd_1.4.8+dfsg-2.1_i386.deb...
$

첫 번째 파일에는 "Builder" 역할의 서명이 있고 두 번째 파일에는 서명이 없습니다.

.deb개별 파일에 서명하는 것은 RPM과 달리 일반적이지 않습니다. 데비안 패키지의 신뢰성은 저장소의 신뢰성에 따라 다릅니다.데비안 소프트웨어 패키지의 신뢰성을 어떻게 보장하나요?

답변2

.deb패키지의 경우 전체 저장소(즉, Release.gpg파일)가 서명되어야 하지만 개별 패키지도 서명될 수 있습니다.

for i in *.deb; do
    ar -p "$i" _gpgbuilder 2>/dev/null | grep "^Signer";
done

관련 정보