randyinthedev-hash/pqcota · View source on GitHub · GitHub에서 소스 보기

v0.10.6

See which cryptography your systems use, track changes, and generate configuration files and Ansible playbooks from plans you approve. 시스템이 실제로 쓰는 암호를 확인하고 변화를 추적하며, 사람이 승인한 계획에서 설정 파일과 Ansible 플레이북을 생성합니다.

People decide what to change and when. You apply the files with your own tools. 무엇을 언제 바꿀지는 사람이 정하고, 적용은 사용자의 도구로 합니다.

▶ Watch the demo ▶ 시연영상 보기 Try the demo데모 실행하기 Read the documentation문서 읽기

An open-source (Apache-2.0) tool for the legacy cryptography runtimes OpenSSL and Java JCA. The documentation is in English. 레거시 암호 런타임(OpenSSL, Java JCA)을 다루는 오픈소스(Apache-2.0) 도구입니다. 문서는 영문입니다.

PqCOTA
Observe what is there. Preserve what changes. Prepare the next step.시스템을 관측하고, 변화를 기록하며, 다음 전환을 준비합니다.

What you get제공하는 결과

Condensed from the demo's output (it runs on test systems): 시험 시스템에서 실행한 데모의 출력을 간추렸습니다.

# observed assets and connections, with the strength of the evidence
pay-app   OpenSSL libcrypto 3.5.5                          confirmed
pay-app   JCA providers: SUN … SunPKCS11, BC               confirmed   ← registered at runtime; not in java.security
web-gw → :8443   TLS  X25519MLKEM768   🟢 post-quantum
web-gw → :4433   TLS  x25519           🔴 classical

# what could not be observed is recorded as such, not as "none"
demo-node   NETWORK not observed (no CAP_NET_RAW)

# from a plan that people wrote and approved
generated   apply playbook · rollback playbook · configuration fragment

Also kept: a history of observations, so you can compare two points in time and see what was added, removed or replaced. 관측 이력도 남기므로 두 시점을 비교해 무엇이 추가·삭제·교체됐는지 볼 수 있습니다.

How it works작동 방식

① Discovery① 관측 Small collector programs observe what a system actually uses: loaded libraries, a live JVM's provider chain, the algorithms negotiated in handshakes. 작은 수집 프로그램으로 시스템이 실제로 쓰는 것을 관측합니다: 로드된 라이브러리, 실행 중인 JVM의 provider 체인, 핸드셰이크에서 협상된 알고리즘.
② Inventory② 인벤토리 Ties each observation to its node and application and keeps the history. When the state changes it leaves a new snapshot, so you can compare it with the earlier one. 관측 결과를 노드와 앱에 연결하고 이력을 보존합니다. 상태가 바뀌면 새 스냅샷을 남겨 이전 상태와 비교합니다.
③ Provisioning③ 전환물 생성 People write and approve a plan. From it the tool generates configuration fragments and Ansible playbooks: apply and rollback come out together. Running them is your Ansible's job. 사람이 계획을 쓰고 승인합니다. 도구는 그 계획에서 설정 조각과 Ansible 플레이북을 생성하며, 적용용과 되돌림용이 함께 나옵니다. 생성된 플레이북은 사용자가 자신의 Ansible로 실행합니다.

Where to start시작 안내

New to PQCPQC가 처음이라면 A first PQC migration, step by step. PQC 이관을 처음부터 차근차근 따라갑니다. Read the primer →입문서 읽기 → Running the migration이관을 운영한다면 Run the demo, then build it yourself; the FAQ answers the operations questions. 데모를 돌려 보고 직접 빌드합니다. 운영 관련 질문은 FAQ에서 확인하세요. Run the demo →데모 실행하기 → Reading or writing a report보고서를 받거나 쓴다면 What the results mean, and what they do not prove. 결과가 무엇을 뜻하고 무엇을 증명하지 않는지 설명합니다. Read the reporting guide →보고 안내 읽기 → Developers개발자라면 How the five repositories fit, how to build, change a contract and run the checks. 다섯 리포의 관계, 빌드, 계약 변경, 검사를 안내합니다. Developer documentation →개발자 문서 →

Scope and limits지원 범위와 한계

Repositories리포지토리

pqcota is five repositories under one Apache-2.0 project.pqcota는 Apache-2.0 아래 다섯 리포로 이루어져 있습니다.

pqcota Docs, Docker demo, gates over all five문서, 도커 데모, 다섯 리포 전체 관문 GitHub → pqcota-common Shared contracts and types공통 계약과 타입 GitHub → pqcota-discovery Observe: collectors and node agents관측: 수집기와 노드 에이전트 GitHub → pqcota-inventory Inventory: history and normalization인벤토리: 이력과 정규화 GitHub → pqcota-provisioning Generate: plans, configs, playbooks생성: 계획, 설정, 플레이북 GitHub →
The name is PQC + Orchestra. This software is a player in the orchestra, not the maestro: what to migrate and when is conducted by whoever wields it. 이름은 PQC와 오케스트라에서 왔습니다. 이 소프트웨어는 교향악의 단원이지 마에스트로가 아닙니다. 무엇을 언제 이관할지 지휘하는 것은 이 도구를 쓰는 사용자입니다.