跳到正文
cccskills
免费在 GitHub 公开

implementing-homomorphic-encryption

Guide to implementing homomorphic encryption for privacy-preserving computation under GDPR. Covers scheme selection (BFV, BGV, CKKS, TFHE), Microsoft SEAL, IBM HELib, and Google FHE transpiler. Includes performance benchmarks, parameter tuning, and basic HE example code for encrypted arithmetic operations.

中文简介正在准备中。当前显示原文说明。

查看安装方法

包含的文件(5)

  • SKILL.md10.0 KB
  • assets/template.md4.2 KB
  • references/standards.md3.5 KB
  • references/workflows.md6.1 KB
  • scripts/process.py13.5 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Implementing Homomorphic Encryption

Overview

Homomorphic encryption (HE) enables computation on encrypted data without decryption. The data owner encrypts their data, sends the ciphertext to a computing party (e.g., a cloud processor under Article 28), and the computing party performs operations on the ciphertext. The encrypted results are returned to the data owner, who decrypts them to obtain the plaintext result. At no point does the computing party see unencrypted data.

This directly supports GDPR Article 32(1)(a), which identifies encryption as an appropriate technical measure, and Article 25(1), which requires data protection by design. HE enables a controller to outsource computation to a processor while maintaining cryptographic confidentiality of personal data.

HE Scheme Selection

Scheme Comparison

SchemeArithmetic TypeExact/ApproximateOperationsBest ForLibraries
BFVInteger (modular)ExactAdd, Multiply (limited depth)Counting, matching, exact integer computationMicrosoft SEAL, OpenFHE
BGVInteger (modular)ExactAdd, Multiply (with modulus switching)Deep circuits on integers, batched operationsHELib, OpenFHE
CKKSReal/ComplexApproximateAdd, Multiply, RotationML inference, statistical analysis, floating-point computationMicrosoft SEAL, OpenFHE, HEAAN
TFHEBoolean/IntegerExactArbitrary (gate-by-gate)Programmable bootstrapping, arbitrary functionsTFHE-rs, Concrete (Zama)

Decision Criteria

CriterionBFV/BGVCKKSTFHE
Need exact results?YesNo (approximate)Yes
Data typeIntegersReal numbersBoolean/Small integers
Multiplicative depthLimited (plan ahead)Limited (plan ahead)Unlimited (with bootstrapping)
SIMD batchingYes (thousands of slots)Yes (thousands of slots)Limited
PerformanceFast for shallow circuitsFast for ML workloadsSlow per operation, fast bootstrapping
Typical latencyMilliseconds (shallow) to secondsMilliseconds to secondsSeconds to minutes

Parameter Selection Guide

For BFV/CKKS with Microsoft SEAL, the key parameters are:

ParameterDescriptionSecurity ImpactPerformance Impact
poly_modulus_degree (N)Degree of the polynomial ringHigher N = more securityHigher N = slower operations, more memory
coeff_modulusProduct of primes defining the coefficient modulusDetermines noise budget and multiplicative depthMore primes = deeper circuits but larger ciphertexts
plain_modulus (BFV only)Modulus for plaintext encodingMust accommodate plaintext valuesLarger = less noise budget available
scale (CKKS only)Encoding scale factorDetermines precision of approximate resultsHigher scale = more precision but faster noise growth

Recommended parameter sets (128-bit security):

Use CaseNcoeff_modulus bitsMult DepthMemory/Ciphertext
Simple addition/comparison4096[40, 40]1~64 KB
Moderate computation (sum + multiply)8192[60, 40, 40, 60]2-3~256 KB
ML inference (logistic regression)16384[60, 40, 40, 40, 40, 60]4-5~1 MB
Deep neural network inference32768[60, 40×8, 60]8+~4 MB

Architecture for GDPR-Compliant HE Processing

┌────────────────────────────────────────────────────────────┐
│              Data Controller (Prism Data Systems AG)        │
│  ┌──────────────────┐  ┌──────────────────────────────┐   │
│  │ Key Generator     │  │ Encrypt personal data        │   │
│  │ (sk stays here)   │  │ with public key              │   │
│  └────────┬─────────┘  └──────────┬───────────────────┘   │
│           │ pk, rlk, gk           │ ciphertext             │
└───────────┼───────────────────────┼────────────────────────┘
            │                       │
            ▼                       ▼
┌────────────────────────────────────────────────────────────┐
│              Data Processor (Cloud Service)                  │
│  ┌──────────────────────────────────────────────────────┐  │
│  │ Compute on ciphertext using pk, rlk, gk              │  │
│  │ (NEVER has access to sk — cannot decrypt)             │  │
│  │                                                        │  │
│  │ Operations: HE.Add, HE.Multiply, HE.Rotate           │  │
│  └──────────────────────────┬───────────────────────────┘  │
│                              │ encrypted result             │
└──────────────────────────────┼─────────────────────────────┘
                               │
                               ▼
┌────────────────────────────────────────────────────────────┐
│              Data Controller (Prism Data Systems AG)        │
│  ┌──────────────────────────────────────────────────────┐  │
│  │ Decrypt result using sk                               │  │
│  │ Plaintext result = f(data) computed without exposure   │  │
│  └──────────────────────────────────────────────────────┘  │
└────────────────────────────────────────────────────────────┘

Key:
  sk = Secret key (never leaves controller)
  pk = Public key (for encryption and computation)
  rlk = Relinearization keys (for ciphertext multiplication)
  gk = Galois keys (for ciphertext rotation/SIMD operations)

Performance Considerations

Benchmark Reference (Microsoft SEAL, BFV, N=8192, 128-bit security)

OperationLatencyThroughput (ops/sec)
Key generation50 ms20
Encryption2 ms500
Decryption1 ms1,000
Ciphertext addition0.1 ms10,000
Ciphertext multiplication5 ms200
Relinearization3 ms333
SIMD rotation4 ms250

Optimization Strategies

StrategyBenefitTrade-off
SIMD batchingProcess thousands of values in parallelRequires data to be structured as vectors
Circuit depth minimizationFewer multiplications = less noise, smaller parametersMay require algorithmic redesign
Lazy relinearizationSkip intermediate relinearizationsLarger intermediate ciphertexts
Level-aware computationUse modulus switching to control noiseRequires careful depth planning
Hybrid HE + plaintextPerform non-sensitive operations in plaintextReduces privacy guarantee scope

Implementation Workflow

  1. Identify computation — Define the exact mathematical function to compute on encrypted data. Express it as additions and multiplications (and rotations for SIMD).

  2. Select scheme — Choose BFV for exact integer results, CKKS for approximate real-number results, TFHE for arbitrary boolean/integer functions.

  3. Estimate circuit depth — Count the maximum number of sequential multiplications in the computation graph. This determines parameter requirements.

  4. Select parameters — Choose poly_modulus_degree and coeff_modulus to support the required depth at 128-bit security.

  5. Implement and test — Implement the computation using an HE library. Test against plaintext reference implementation to verify correctness.

  6. Benchmark — Measure encryption, computation, and decryption latency. Verify memory requirements are within infrastructure limits.

  7. Deploy — Establish key management (secret key in HSM at controller, public keys distributed to processor), monitoring, and audit logging.

Key Regulatory References

  • GDPR Article 25(1) — Data protection by design (encryption as a design measure)
  • GDPR Article 32(1)(a) — Encryption as a security measure
  • GDPR Article 28 — Processor obligations (HE enables processing without plaintext exposure)
  • GDPR Recital 83 — Encryption to maintain security
  • ENISA Report: Data Protection Engineering (2022)
  • HomomorphicEncryption.org Standard: Homomorphic Encryption Standardization (2018)

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Implements 42 CFR Part 2 protections for substance use disorder patient records. Covers written consent requirements stricter than HIPAA, re-disclosure prohibition, court order procedures, qualified service organization agreements, and 2024 amendments aligning Part 2 with HIPAA. Keywords: 42 CFR Part 2, substance use disorder, SUD records, re-disclosure, consent, Part 2 amendments.

中文简介正在准备中。当前显示原文说明。

mukul975/Privacy-Data-Protection-Skills3152026年3月17日 更新

Guides assessment of third-country adequacy decisions under GDPR Article 45 for international data transfers. Covers the current EC adequacy decisions list, adequacy assessment criteria, partial adequacy handling, and monitoring of adequacy decision reviews. Keywords: adequacy decision, Article 45, third country, adequate protection, EC adequacy list.

中文简介正在准备中。当前显示原文说明。

mukul975/Privacy-Data-Protection-Skills3152026年3月17日 更新

Implements age-gating mechanisms for online services to restrict access based on user age. Covers hard gates versus soft gates, neutral age prompts, re-verification triggers, circumvention prevention, and regulatory requirements under GDPR, COPPA, UK Online Safety Act, and DSA. Keywords: age gate, age restriction, neutral prompt, children, online services, access control.

中文简介正在准备中。当前显示原文说明。

mukul975/Privacy-Data-Protection-Skills3152026年3月17日 更新

Evaluates and implements age estimation and verification technologies for online services. Covers facial age estimation, digital ID verification, self-declaration with risk assessment, AI-based age estimation, and the accuracy versus privacy tradeoff. Includes ICO guidance and euCONSENT framework. Keywords: age verification, age estimation, facial analysis, digital ID, children, online safety.

中文简介正在准备中。当前显示原文说明。

mukul975/Privacy-Data-Protection-Skills3152026年3月17日 更新

Preparing EU AI Act compliance documentation for high-risk AI systems. Covers Annex III classification, technical documentation under Art. 11, conformity assessment, risk management systems, and CE marking requirements. Keywords: EU AI Act, high-risk AI, Annex III, conformity assessment, CE marking.

中文简介正在准备中。当前显示原文说明。

mukul975/Privacy-Data-Protection-Skills3152026年3月17日 更新

Implements GDPR Art. 22 automated decision-making and AI Act Art. 14 human oversight requirements for AI systems. Covers identification of solely automated decisions, meaningful human intervention design, logic explanation mechanisms, and contestation procedures. Keywords: Art. 22, automated decision, human oversight, AI Act, profiling, contestation.

中文简介正在准备中。当前显示原文说明。

mukul975/Privacy-Data-Protection-Skills3152026年3月17日 更新

查看 mukul975 的全部技能

报告此技能的问题