Capacitor-업데이터 code 암호화가 끝에서 끝까지 지원되며 Code 서명은 사용자 장치에서 실행되는 업데이트가 손상되지 않았는지 확인하고 Capacitor-업데이터의 표준 웹 등급 보안보다 추가적인 보호를 제공합니다.
Capacitor-업데이터의 기본 보안
Capgo의 보안 모델은 기본적으로 웹 호스팅 제공자의 보안 모델과 유사합니다. Capgo은 업데이트를 저장하고 휴대폰에서 업데이트를 저장 휴대폰에서 업데이트를 저장

Capgo’s default security scores an A+ on SSL Labs’ HTTPS test (__CAPGO_KEEP_0__는 SSL Labs의 HTTPS 테스트에서 A+ 점수를 받습니다.__CAPGO_KEEP_0__의 기본 보안은 SSL Labs의 HTTPS 테스트에서 A+ 점수를 받았습니다. (
Like best-in-class web hosts, Capgo uses HTTPS to protect the privacy and integrity of network connections between the server and end users’ devices. This is an excellent level of security that works well both for the web and Ionic apps that use Capgo.
https://www.ssllabs.com
다른 점은 Capgo와 대부분의 웹 호스트가 공유하는 것은, AWS, GCP, 또는 다른 인기 있는 클라우드 제공자에서 작동하는 하위 수준의 클라우드 인프라를 실행한다는 것입니다. 이러한 클라우드 제공자와 Capgo 또는 다른 웹 호스트가 운영하는 하드웨어 및 소프트웨어는 클라우드 공급 chain의 일부입니다.
클라우드 공급 chain과 그 보안 모델은 수많은 웹사이트와 앱에 작동합니다. 클라우드 제공자에 의존하는 모든 웹 개발자는 업로드한 파일이 실행되거나 제공되는 파일이 변조되지 않은 파일임을 기대합니다. 클라우드 제공자는 인프라를 보안하기 위해 노력합니다.
하지만 명백히, 하드웨어 및 소프트웨어 취약점이 발견됩니다. 클라우드 제공자는 취약점을 정기적으로 패치하고, 악성 소프트웨어를 예방하고(Google의 SLSA), 보안을 위한 여러 층의 방어를 구축합니다. 실제로 클라우드 인프라가 대부분의 웹사이트와 앱의 보안 요구 사항을 충족하는 것으로 나타났습니다. 그러나 일부 Ionic 앱은 위험 모델에 취약한 클라우드 인프라를 포함합니다. 이러한 __CAPGO_KEEP_0__ JS 앱에 가장 높은 보안 요구 사항이 있는 웹 위의 앱을 위해, 우리는 __CAPGO_KEEP_1__와 __CAPGO_KEEP_2__에서 끝에서 끝으로 __CAPGO_KEEP_0__를 구축했습니다. __CAPGO_KEEP_0__ Updates 표준 프로토콜), and build layers of defense in depth, and in practice, cloud infrastructure has shown to meet most websites and apps’ security needs. However, some Ionic apps include compromised cloud infrastructure in their threat models. For these Capacitor JS apps with the highest security requirements above the web, we built end-to-end code signing in to Capgo and the Capgo의 끝에서 끝으로 __CAPGO_KEEP_1__를 사용하는 것은 공개 키 암호화를 사용하여 사용자 기기의 __CAPGO_KEEP_2__ 앱 개발자가 제공하는 원본 업데이트만 실행되도록 보장합니다..
End-to-end code signing with Capgo
Capgo’s end-to-end code signing uses public-key cryptography to ensure end users’ devices run only unmodified, original updates from the Capacitor app developer.
“Code”은 개발자가 업데이트를 게시한 시간부터 사용자가 장치에 업데이트를 받고 실행한 시간까지의 모든 흐름을 보호하는 보안을 의미합니다. “Code signing”은 암호화와 개발자의 비밀 개인 키를 사용하여 “code”을 “Code”으로 서명하고, 나중에 신뢰할 수 있는 공개 키를 사용하여 서명이 검증되는 것을 의미합니다.
업데이트의 흐름을 설명하기 위한 간단한* 스키마입니다.

- 실제로는 복잡하지만 암호화는 어렵습니다
정의:
- AES: Advanced Encryption Standard, symmetric encryption algorithm, 암호화와 복호화에 하나의 키가 사용됩니다.
- RSA: Rivest–Shamir–Adleman, asymmetric encryption algorithm, 두 개의 키가 사용됩니다: 공개 키와 개인 키.
- 암호화된 데이터.
- 세션 키: AES 키가 데이터를 암호화하고 복호화하는 데 사용됩니다.
- 체크섬: 파일에 대한 해시.
- 서명: 체크섬이 개발자의 개인 RSA 키로 암호화된 해시입니다. 개발자의 공개 RSA 키를 사용하여 검증할 수 있습니다.
업데이트를 암호화하는 데 AES 알고리즘을 사용합니다. 업로드마다 임의의 AES 키를 생성하고, AES 키와 체크섬(이하 “서명”)을 개발자의 개인 RSA 키로 암호화합니다. 개발자는 앱에서 개발자의 공개 RSA 키를 사용하여 AES 키와 서명(체크섬으로 변환)을 복호화합니다. 나중에 복호화된 AES 키를 사용하여 업데이트를 복호화하고, 복호화된 업데이트의 체크섬을 계산하고, 복호화된 서명과 비교합니다.
We use two different encryption algorithms because RSA cannot be used to encrypt large amounts of data. AES is used to encrypt the update and RSA is used to encrypt the AES key and the checksum.
With this, even Capgo cannot read the content of your bundle. This is a robust security model that is used by many enterprise customers.
Update encryption V2 2024-08-27:
- We switched the key type that is stored in the app. This was done in order to prevent inferring the public key (previously used for encryption) from the private key (previously used for decryption). Now, the app stores the public key (now used for decryption).
- We switched the checksum from the CRC32 algorithm to the SHA256 algorithm. We also started signing the bundle. When encryption V2 is configured, an update must have a valid signature. This is strictly enforced by the plugin. We now enforce a valid signature encryption V2 is configured. These 3 changes have been done after a security analysis from a community member. They are here to prevent cryptographic attacks during update.If you used encryption V1, migrate to V2 to benefit from the new security features. Follow the migration instructions.
- With end-to-end __CAPGO_KEEP_0__ signing, __CAPGO_KEEP_1__ becomes a “trustless” cloud infrastructure. If one of __CAPGO_KEEP_2__’s cloud providers or even __CAPGO_KEEP_3__ itself were to modify a __CAPGO_KEEP_4__-signed update, end users’ devices would reject that update and run the previous, trusted update that’s already on the device.
We use two different encryption algorithms because RSA cannot be used to encrypt large amounts of data. AES is used to encrypt the update and RSA is used to encrypt the AES key and the checksum. With this, even __CAPGO_KEEP_0__ cannot read the content of your bundle. This is a robust security model that is used by many enterprise customers..
With end-to-end code signing, Capgo becomes a “trustless” cloud infrastructure. If one of Capgo’s cloud providers or even Capgo itself were to modify a code-signed update, end users’ devices would reject that update and run the previous, trusted update that’s already on the device.
While web-level HTTPS is sufficient for many apps, some large companies find the extra level of security from end-to-end code signing appealing. Some of these companies make finance apps that issue high-value, permanent transactions. Other companies have CISOs who include compromised cloud infrastructure in their threat models. We built end-to-end code signing in to Capgo for these use cases and are interested in hearing more from companies with higher-level security needs.
기업 고객을 위한 시작
보안에 매우 관심이 있는 대형 회사 또는 프로젝트를 위한 code signing을 쉽게 설정하고 유지할 수 있도록 하기 위해, 우리는 다음과 같은 기능을 제공합니다.
- 빠른 인증서 설정 및 구성
- code signing 개발 서버를 위한 Capgo 및 개발 빌드의 지원
- 업데이트마다 code signing
Capgo code signing은 모든 고객에게 사용 가능합니다. 시작하기 위해서는 설정 지침.
크레딧
__CAPGO_KEEP_0__ signing을 위한 많은 도움을 주신 Ionic이 문서는 이에 기반합니다. 이 기사 Chat-GPT-3로 다시 쓰고 adapting했습니다.
Capacitor 업데이터를 위한 E2E 암호화에서 Code 서명으로 계속 진행하세요.
Capgo를 사용 중인 경우 Capacitor 업데이터를 위한 E2E 암호화에서 Code 서명으로 보안 및 규정 준수 계획을 위해 연결하세요. __CAPGO_KEEP_2__ __CAPGO_KEEP_2__의 구현 세부 사항에 대해 __CAPGO_KEEP_3__ __CAPGO_KEEP_3__의 구현 세부 사항에 대해 Capgo 보안 스캐너 Capgo 보안 스캐너의 제품 워크플로우에 대해 Capgo 보안 Capgo 보안의 제품 워크플로우에서 Capgo 신뢰 센터 Capgo 신뢰 센터의 제품 워크플로우에서.