
تنفيذ ثنائي مرتبط بالعتاد ومقيّد بالسحابة، وإثبات مصدر تشفيري، وختم مغلف مضاد للعبث لـ Crystal.
تنفيذ ثنائي مرتبط بالعتاد ومُقيَّد بالسحابة وختم غلاف مضاد للتلاعب لـ Crystal.
يضمن Pyrite أن ملفك الثنائي المُصرَّف بلغة Crystal لا يُنفَّذ إلا على بنيتك التحتية المصرَّح بها. إذا استخرج خصم الملف الثنائي أو سرَّبه أو سرقه أو عدَّله، يتوقف التنفيذ فورًا قبل كشف أي منطق تطبيقي أو أسرار.
systemd-creds) أو Google Cloud Run IAM / Cloud KMS./proc/self/exe ويقارنه بالتجزئة المصرَّح بها المفكوكة من الغلاف. أي تغيير بمقدار بايت واحد يوقف العملية فورًا.strip -s) لا يحتوي على أي جداول رموز أو بيانات وصفية للانعكاس أو إعدادات نصية صريحة. لا يُنتج فك التصريف سوى غلاف فك تشفير ميت.shard.ymldependencies:
pyrite:
github: renich/pyrite
version: ~> 0.2.0
require "pyrite"
require "kemal"
# Define strongly-typed application configuration
struct AppConfig
include JSON::Serializable
getter database_url : String
getter session_secret : String
getter api_token : String
end
# 1-line verification & bootstrap:
config = Pyrite.bootstrap!(AppConfig)
puts "Pyrite verified binary integrity. Starting application..."
get "/" do
"Secure service running on authorized hardware."
end
Kemal.run
يفرض Pyrite سياسة انعدام ثقة مطلقة وفشل مُغلَق:
Pyrite::HardwareAuthError ويخرج بالرمز 1.bin/pyrite)عند التثبيت، يوفر Pyrite أداة CLI مُصرَّفة لأتمتة تصريف LLVM، وتجريد رموز ELF، وتجزئة SHA-256، وختم الغلاف.
# Build & Seal for Google Cloud Run (KMS):
bin/pyrite build \
--input=src/main.cr \
--output=bin/app \
--target=gcp \
--kms-key="projects/my-p/locations/global/keyRings/my-r/cryptoKeys/app-key" \
--config=config/production.json
# Build & Seal for Bare-Metal Fedora (TPM 2.0 / systemd-creds):
bin/pyrite build \
--input=src/main.cr \
--output=bin/app \
--target=baremetal \
--pcr=0,7 \
--config=config/production.json
# Build & Seal for AWS (ECS / Lambda / KMS):
bin/pyrite build \
--input=src/main.cr \
--output=bin/app \
--target=aws \
--kms-key="arn:aws:kms:us-east-1:123456789012:key/..." \
--config=config/production.json
| البيئة | المزوّد | جذر الثقة | الحماية |
|---|---|---|---|
| Google Cloud Run | Pyrite::Providers::GCPKMS | Google Cloud IAM + Cloud KMS | BinAuthz + Instance Metadata OIDC |
| Fedora / Bare-Metal | Pyrite::Providers::SystemdCreds | Host TPM 2.0 (PCR 0,7) | systemd-creds + Linux Kernel IMA |
| Bare-Metal Direct | Pyrite::Providers::TPM2Direct | /dev/tpmrm0 chip | Direct TPM2 PCR unseal (tpm2-tools) |
| AWS (ECS / Lambda) | Pyrite::Providers::AWSKMS | IMDSv2 + AWS KMS | AWS IAM Task Role Decrypt |
تُحفظ التوثيقات التقنية الشاملة والمواصفات وسجلات قرارات البنية في reStructuredText تحت docs/: