Paano Ipakita ang & I-verify ang Mga Signature ng Code para sa Apps sa Mac OS X
Talaan ng mga Nilalaman:
Ang mga application na nilagdaan ng code ay nagbibigay-daan sa mga user na may kamalayan sa seguridad na i-verify ang gumawa at hash ng isang partikular na app upang makatulong na kumpirmahin na hindi ito napinsala o napinsala. Ito ay bihirang kinakailangan para sa mga karaniwang gumagamit ng Mac, lalo na sa mga kumukuha ng kanilang software mula sa Mac App Store o iba pang pinagkakatiwalaang mapagkukunan dahil ang mga app ay na-certify, ngunit ang pag-verify sa digital signature ng isang app ay maaaring maging lubhang kapaki-pakinabang para sa mga user na nakakakuha ng mga app mula sa third party pinagmumulan.
Ang pag-verify ng code signature ay partikular na mahalaga para sa mga nakakakuha ng software at mga installer mula sa p2p at mga distributed na source, marahil isang torrent site o newsgroup, IRC, pampublikong ftp, o iba pang mapagkukunan ng network. Para sa isang praktikal na halimbawa, sabihin nating hindi maa-access ng isang user ang Mac App Store sa anumang dahilan, ngunit kailangang mag-download ng Mac OS X installer application at sa gayon ay umaasa sa isang third party na pinagmulan. Ang ganitong sitwasyon ay kung kailan mahalagang malaman at i-verify na ang installer ay hindi pinakialaman at lehitimong nagmumula sa Apple, at bukod sa direktang pagsuri sa sha1 hash, ang pinakamadaling paraan para gawin iyon ay ang pagsuri sa code signature at cryptographic. hash ng app na pinag-uusapan.
Paano Suriin ang Code Signature para sa Apps sa Mac
Upang magsimula, ilunsad ang Terminal, na makikita sa /Applications/Utilities/. Gagamitin namin ang naaangkop na pinangalanang command na 'codesign', kumpleto sa mga flag na -dv at –verbose=4 para ipakita ang impormasyong nagpapakilala tungkol sa anumang application, kabilang ang uri ng hash, hash checksum, at awtoridad sa pagpirma nito.
Ang pangunahing syntax ay ang mga sumusunod:
codesign -dv --verbose=4 /Path/To/Application.app
Halimbawa, tingnan natin ang lagda sa Terminal.app, na matatagpuan sa /Applications/Utilities/
codesign -dv --verbose=4 /Applications/Utilities/Terminal.app Executable=/Applications/Utilities/Terminal.app/Contents/MacOS/Terminal Identifier=com.apple.Terminal Format=bundle na may Mach-O thin (x86_64) CodeDirectory v=20100 size=5227 flags=0x0(none) hashes=255+3 location=embedded Platform identifier=1 Hash type=sha1 size=20 CDHash=0941049019f9fa3499333fb5b52b53735b498aed6cde6a23 Laki ng lagda=4105 Authority=Software Signing Authority=Apple Code Signing Certification Authority=Apple Root CA Info.plist entries=34 TeamIdentifier=34 na mga kinakailangan sa TeamIdentifier=29 Mga Requirements sa loob ng TeamIdentifier=2.
Ang hinahanap mo ay ang uri ng hash, hash, at awtoridad na mga entry. Sa kasong ito, ang uri ng hash ay sha1 at ang nilagdaang awtoridad ay Apple, na iyong inaasahan.
Oo, maaari mo ring gamitin ang command line para tingnan lang ang sha1 o md5 na mga hash ng mga installer at pag-download ng application at ihambing ang mga ito sa isang lehitimong pinagmulan, ngunit hindi nito ipapakita ang mga detalye ng pagpirma ng code at certificate.
Tandaan na karamihan sa software na nilagdaan ng code na binago ng isang hindi awtorisadong partido ay tatanggihan ng Gatekeeper sa Mac OS X, maliban kung ang Gatekeeper ay hindi pinagana o kung hindi man ay naiwasan, ngunit kahit na may Gatekeeper na natitira dito ay Sa teoryang posible para sa isang masigasig na goon na makahanap ng isang paraan sa paligid nito, at siyempre ang software na hindi pa na-certify ng isang natukoy na developer ay maaaring palaging ilunsad sa paligid ng Gatekeeper.
Maaari kang tungkol sa pag-sign ng code sa Wikipedia at sa gabay ng Apple Developer sa pag-sign ng code dito.
Nasusuri mo ba kung naka-sign ang mga app? Maaari itong maging isang wastong paraan upang matukoy kung ano ang ilang mga proseso at app, at maaari ding maging kapaki-pakinabang para sa pag-troubleshoot. Subukan ito sa susunod na mag-isip ka kung ano ang isang bagay at kung ito ay pinirmahan o hindi!