Capacitor-업데이터 code-업데이터는 현재 Code 서명으로 code의 E2E 암호화를 지원합니다. Code 서명은 사용자 기기의 업데이트가 조작되지 않았는지 확인하고 Capacitor-업데이터의 표준 웹 보안보다 추가적인 보호를 제공합니다.
Capacitor-업데이터의 기본 보안
Capgo의 기본 보안 모델은 웹 호스팅 제공자의 보안 모델과 유사합니다. Capgo은 업데이트를 저장합니다. __CAPGO_KEEP_0__의 데이터는 안전하게 암호화되어 있습니다. 또한 __CAPGO_KEEP_0__은 HTTPS를 사용하여 최신 암호를 사용하여 데이터를 보호합니다. 개발자의 컴퓨터에서 업데이트를 게시할 때 항상 HTTPS를 사용합니다.

Capgo의 기본 보안은 SSL Labs의 HTTPS 테스트에서 A+ 점수를 받습니다. (https://www.ssllabs.com년 11월 2022
Capgo은 웹 호스트의 최고 수준과 마찬가지로 HTTPS를 사용하여 서버와 사용자 기기의 네트워크 연결의 개인 정보와 무결성을 보호합니다. 이 수준의 보안은 웹과 Capgo을 사용하는 아이오닉 앱 모두에서 잘 작동합니다.
__CAPGO_KEEP_0__과 대부분의 웹 호스트는 하위 수준의 클라우드 인프라에서 작동합니다. 이들은 종종 AWS, GCP, 또는 다른 인기 있는 클라우드 제공자에서 제공됩니다. 클라우드 제공자와 __CAPGO_KEEP_1__ 또는 다른 웹 호스트가 운영하는 하드웨어 및 소프트웨어는 클라우드 공급 chain의 일부입니다.
Another thing Capgo and most web hosts have in common is they run on lower-level cloud infrastructure, often from AWS, GCP, or another popular cloud provider. The hardware and software operated by these cloud providers and Capgo or other web hosts are part of the cloud supply chain.
물론, 하드웨어 및 소프트웨어 취약점이 발견됩니다. 클라우드 제공자는 취약점을 정기적으로 패치하고 악성 소프트웨어를 예방합니다. 예를 들어, Google의 SLSA
__CAPGO_KEEP_1__ __CAPGO_KEEP_0__대부분의 웹사이트와 앱의 보안 요구 사항을 충족하는 클라우드 인프라를 제공하는 것은 실제로 클라우드 인프라가 보여주고 있습니다. 그러나 일부 Ionic 앱은 위협 모델에 불안정한 클라우드 인프라를 포함합니다. 이러한 Capacitor JS 앱에 대해 가장 높은 보안 요구 사항이 있는 웹 위의 앱을 위해, 우리는 code에 대한 끝에서 끝까지 Capgo에 대한 인증을 구축했습니다. Capgo 업데이트 표준 프로토콜.
끝에서 끝까지 code 인증을 사용하는 Capgo
Capgo의 끝에서 끝까지 code 인증은 공개 키 암호화 방식을 사용하여 Capacitor 앱 개발자가 게시한 업데이트부터 종료 사용자의 장치가 업데이트를 받고 실행하는 시간까지의 흐름을 보장합니다.
“끝에서 끝까지”는 개발자가 업데이트를 게시한 시간부터 종료 사용자의 장치가 업데이트를 받고 실행하는 시간까지의 흐름을 의미합니다. “Code 인증”은 암호화와 비밀 개인 키를 사용하여 “code”을 “인증”하고 나중에 신뢰할 수 있는 공개 키를 사용하여 서명 확인을 사용합니다.
다음은 간단한* 스키마를 설명하는 방법입니다.

- 실제로 복잡합니다. 암호화는 어렵습니다.
정의:
- AES: Advanced Encryption Standard, 암호화와 복호화에 사용되는 단일 키를 사용하는 대칭 암호화 알고리즘.
- RSA: Rivest–Shamir–Adleman, 비대칭 암호화 알고리즘, 공개 키와 개인 키를 사용하여 두 개의 키가 사용됩니다.
- 암호화: 암호화된 데이터.
- 세션 키: AES 알고리즘을 사용하여 데이터를 암호화하고 복호화하는 데 사용되는 키입니다.
- 체크섬: 파일에 대한 해시
- 서명: RSA 개인 키로 암호화된 체크섬입니다. RSA 공개 키를 사용하여 검증할 수 있습니다.
업데이트를 암호화하기 위해 AES 알고리즘을 사용합니다. 업로드를 위해 매번 랜덤한 AES 키를 생성하고, AES 키와 체크섬(이하 '서명')을 개발자의 개인 RSA 키로 암호화합니다. 앱에서 개발자의 공개 RSA 키를 사용하여 AES 키와 서명(체크섬으로 변환)을 복호화합니다. 이후 복호화된 AES 키를 사용하여 업데이트를 복호화하고, 복호화된 업데이트의 체크섬을 계산하여 복호화된 서명과 비교합니다.
RSA를 사용하여 큰 양의 데이터를 암호화할 수 없기 때문에 두 가지 다른 암호화 알고리즘을 사용합니다. 업데이트를 암호화하기 위해 AES를 사용하고, AES 키와 체크섬을 암호화하기 위해 RSA를 사용합니다.
Capgo가 업데이트의 내용을 읽을 수 없도록 하기 위해 이 강력한 보안 모델을 사용합니다. 이 모델은 많은 기업 고객이 사용하는 보안 모델입니다.
업데이트 암호화 V2 2024-08-27:
- 앱에 저장되는 키 유형을 변경했습니다. 이전에는 암호화를 위해 사용된 공개 키를 추론하는 것을 방지하기 위해 이 작업을 수행했습니다. 이제 앱은 복호화를 위해 사용되는 공개 키를 저장합니다.
- 체크섬을 CRC32 알고리즘에서 SHA256 알고리즘으로 변경했습니다. 또한 배ंडल을 서명하기 시작했습니다.. 업그레이드 시 __CAPGO_KEEP_0__ 서명이 유효해야 합니다. 이 규칙은 플러그인에 의해 엄격하게 적용됩니다.
- 우리는 __CAPGO_KEEP_0__ 서명이 유효한지 확인합니다. 이 3 가지 변경 사항은 보안 분석을 통해 커뮤니티의 한 회원이 수행한 것입니다. 이 변경 사항들은 업데이트 중 암호화 공격을 방지하기 위해 있습니다.
만약 __CAPGO_KEEP_0__를 사용했다면, __CAPGO_KEEP_1__로 마이그레이션하여 새로운 보안 기능을 사용할 수 있습니다. 마이그레이션 지침을 따르세요. __CAPGO_KEEP_0__ 서명으로 업데이트를 __CAPGO_KEEP_1__에 업로드하면, __CAPGO_KEEP_2__의 클라우드 제공자나 __CAPGO_KEEP_3__ 자체가 업데이트를 수정하더라도, 사용자 기기는 이전에 기기에 설치된 신뢰할 수 있는 업데이트를 실행합니다..
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.
보안에 깊게 관심이 있는 대기업 또는 프로젝트에 대해, 우리는 __CAPGO_KEEP_0__ 서명 설정 및 유지 관리를 쉽게 하기 위해 __CAPGO_KEEP_0__ 서명 기능을 제공합니다.
For large companies or projects who care deeply about security, we want to make code signing easy to set up and maintain. To that end, we now provide the following features:
- 빠른 인증서 설정 및 구성
- 개발 서버에 code 서명 지원을 Capgo 및 개발 빌드 모두에 제공합니다.
- 업데이트마다 code 서명
Capgo code 서명은 모든 고객에게 사용 가능합니다. 시작하려면 다음 설정 지침을 따르세요. 설치 지침.
크레딧
__CAPGO_KEEP_2__에게 많은 감사드립니다. 이 기사는__CAPGO_KEEP_3__에 기반한 기사 이 기사는 chat-gpt-3와 함께 다시 쓰고 adapting되었습니다. 작성자