
CLI टूल जो कोडबेस में क्वांटम-असुरक्षित क्रिप्टोग्राफी को स्कैन करता है
अपने कोडबेस को क्वांटम-असुरक्षित क्रिप्टोग्राफी के लिए स्कैन करें, इससे पहले कि बहुत देर हो जाए।
त्वरित आरंभ • क्यों क्वांटम-रेडी? • उपयोग • जोखिम स्तर • CI/CD • परिचय
Crypto Scanner एक CLI उपकरण है जो आपके कोडबेस को क्रिप्टोग्राफ़िक एल्गोरिदम के लिए स्कैन करता है और क्वांटम-असुरक्षा जोखिम मूल्यांकन उत्पन्न करता है। यह स्रोत कोड, कॉन्फ़िगरेशन फ़ाइलों और X.509 प्रमाणपत्रों का विश्लेषण करके उस क्रिप्टोग्राफी की पहचान करता है जो क्वांटम कंप्यूटरों द्वारा तोड़ दी जाएगी।
Quantum Shield Labs द्वारा विकसित — संगठनों को पोस्ट-क्वांटम युग के लिए तैयार करने में मदद करता है।
क्रिप्टोग्राफ़िक रूप से प्रासंगिक क्वांटम कंप्यूटर (CRQC) जो RSA और ECC को तोड़ने में सक्षम हैं, 2033 तक उभरने का अनुमान है। यह विज्ञान कथा नहीं है—यह एक समयरेखा है जिसके लिए प्रमुख सरकारें और उद्यम सक्रिय रूप से तैयारी कर रहे हैं।
हमलावर आज भी एन्क्रिप्टेड डेटा एकत्र कर रहे हैं, जिसे वे क्वांटम कंप्यूटर उपलब्ध होने पर डिक्रिप्ट करने का इरादा रखते हैं। यदि आपके डेटा का दीर्घकालिक मूल्य है (स्वास्थ्य देखभाल रिकॉर्ड, वित्तीय डेटा, व्यापार रहस्य, सरकारी संचार), तो यह पहले से ही जोखिम में है।
| चुनौती | वास्तविकता |
|---|---|
| प्रवासन जटिलता | बड़े कोडबेस को संक्रमण में 3-5+ साल लगते हैं |
शोर का एल्गोरिदम, एक पर्याप्त शक्तिशाली क्वांटम कंप्यूटर पर चलने पर, बड़े पूर्णांकों का गुणनखंडन और असतत लघुगणक की गणना कुशलतापूर्वक कर सकता है। यह निम्नलिखित को तोड़ता है:
आप उस चीज़ को स्थानांतरित नहीं कर सकते जिसे आप जानते ही नहीं कि आपके पास है। Crypto Scanner क्रिप्टोग्राफ़िक सूची प्रदान करता है जो किसी भी क्वांटम तत्परता कार्यक्रम में पहला आवश्यक कदम है।
📘 और जानें: व्यापक प्रवासन मार्गदर्शन के लिए Quantum Shield Labs Playbook पढ़ें।
अपना पहला क्वांटम असुरक्षा स्कैन 60 सेकंड से भी कम समय में प्राप्त करें:
# PyPI से इंस्टॉल करें
pip install crypto-scanner
# अपने प्रोजेक्ट को स्कैन करें
crypto-scanner scan .
# एक कार्यकारी HTML रिपोर्ट उत्पन्न करें
crypto-scanner scan . --html --output quantum-risk-report.html
बस इतना ही। अब आपके पास अपने कोडबेस की पूर्ण क्रिप्टोग्राफ़िक सूची है।
pip install crypto-scanner
git clone https://github.com/mbennett-labs/crypto-scanner.git
cd crypto-scanner
pip install -e .
# एक निर्देशिका स्कैन करें (JSON आउटपुट stdout पर)
crypto-scanner scan <directory>
# समर्थित फ़ाइल प्रकार और जोखिम वर्गीकरण दिखाएँ
crypto-scanner info
# संस्करण प्रदर्शित करें
crypto-scanner --version
# विस्तृत आउटपुट के साथ स्कैन करें
crypto-scanner scan ./src --verbose
# JSON रिपोर्ट को फ़ाइल में सहेजें
crypto-scanner scan . --output crypto-audit.json
# हितधारकों के लिए ब्रांडेड HTML रिपोर्ट उत्पन्न करें
crypto-scanner scan . --html --output quantum-assessment.html
# विशिष्ट निर्देशिकाओं को बाहर करें
crypto-scanner scan . --exclude vendor --exclude legacy
# फ़ाइल पैटर्न बहिष्कृत करें
crypto-scanner scan . --exclude "*.test.js" --exclude "*.spec.ts"
# विकल्पों को संयोजित करें
crypto-scanner scan ./backend -v --exclude node_modules -o report.json
निर्भरताओं को स्कैन करने से बचने के लिए निम्नलिखित स्वचालित रूप से बहिष्कृत हैं:
.git, .svn, .hg # संस्करण नियंत्रण
node_modules, vendor # पैकेज निर्भरताएँ
__pycache__, .pytest_cache, .mypy_cache
.venv, venv, env # वर्चुअल वातावरण
dist, build, out # बिल्ड आउटपुट
.idea, .vscode # IDE निर्देशिकाएँ
site-packages, third_party
एल्गोरिदम जो शोर के एल्गोरिदम द्वारा पूरी तरह से तोड़ दिए जाएंगे:
ज्ञात शास्त्रीय कमजोरियों वाले एल्गोरिदम:
एल्गोरिदम जो वर्तमान में सुरक्षित हैं लेकिन निगरानी की जानी चाहिए:
एल्गोरिदम जो पर्याप्त सुरक्षा प्रदान करते हैं:
| एक्सटेंशन | प्रारूप |
|---|---|
.pem | PEM एन्कोडेड |
.crt, .cer, .cert | प्रमाणपत्र |
.der | DER एन्कोडेड |
डिफ़ॉल्ट आउटपुट प्रारूप, ऑटोमेशन और CI/CD पाइपलाइनों के लिए आदर्श:
{
"scan_directory": "/path/to/project",
"scan_timestamp": "2026-02-06T10:30:00",
"scanner_version": "0.1.0",
"summary": {
"total_files_scanned": 150,
"total_findings": 23,
"critical_count": 5,
"high_count": 8,
"medium_count": 7,
"low_count": 3
},
"excluded_patterns": [".git", "node_modules", "..."],
"findings": [
{
"file_path": "/path/to/auth.py",
"line_number": 42,
"algorithm": "RSA",
"key_size": 2048,
"risk_level": "critical",
"description": "RSA key generation detected",
"recommendation": "Plan migration to post-quantum algorithms (ML-KEM, ML-DSA)",
"context": "key = rsa.generate_private_key(public_exponent=65537, key_size=2048)"
}
]
}
Quantum Shield Labs ब्रांडिंग के साथ पेशेवर, स्व-निहित रिपोर्ट:
इसके साथ उत्पन्न करें:
crypto-scanner scan . --html --output report.html
name: Crypto Vulnerability Scan
on: [push, pull_request]
jobs:
crypto-scan:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.12'
- name: Install Crypto Scanner
run: pip install crypto-scanner
- name: Run Crypto Scan
run: crypto-scanner scan ./src --output crypto-report.json
- name: Check for Critical Findings
run: |
CRITICAL=$(jq '.summary.critical_count' crypto-report.json)
if [ "$CRITICAL" -gt 0 ]; then
echo "::error::Found $CRITICAL critical quantum-vulnerable algorithms!"
jq '.findings[] | select(.risk_level == "critical")' crypto-report.json
exit 1
fi
- name: Upload Report
uses: actions/upload-artifact@v4
if: always()
with:
name: crypto-vulnerability-report
path: crypto-report.json
crypto-scan:
stage: security
image: python:3.12
script:
- pip install crypto-scanner
- crypto-scanner scan . --output crypto-report.json
- |
CRITICAL=$(jq '.summary.critical_count' crypto-report.json)
if [ "$CRITICAL" -gt 0 ]; then
echo "Critical quantum-vulnerable cryptography detected!"
exit 1
fi
artifacts:
reports:
dotenv: crypto-report.json
paths:
- crypto-report.json
when: always
.pre-commit-config.yaml में जोड़ें:
repos:
- repo: local
hooks:
- id: crypto-scanner
name: Crypto Scanner
entry: bash -c 'crypto-scanner scan . --output /tmp/crypto-scan.json && CRITICAL=$(jq ".summary.critical_count" /tmp/crypto-scan.json) && [ "$CRITICAL" -eq 0 ]'
language: system
pass_filenames: false
always_run: true
#!/bin/bash
# crypto-check.sh - Fail if critical vulnerabilities found
set -e
crypto-scanner scan . --output /tmp/crypto-report.json
CRITICAL=$(jq '.summary.critical_count' /tmp/crypto-report.json)
HIGH=$(jq '.summary.high_count' /tmp/crypto-report.json)
echo "Scan complete: $CRITICAL critical, $HIGH high risk findings"
if [ "$CRITICAL" -gt 0 ]; then
echo "FAILED: Critical quantum-vulnerable cryptography detected!"
exit 1
fi
crypto-scanner/
├── src/crypto_scanner/
│ ├── cli.py # Typer CLI इंटरफ़ेस
│ ├── scanner.py # मुख्य ऑर्केस्ट्रेशन तर्क
│ ├── models.py # Pydantic डेटा मॉडल
│ ├── patterns.py # 50+ regex डिटेक्शन पैटर्न
│ ├── analyzers/ # फ़ाइल प्रकार विश्लेषक
│ │ ├── base.py # अमूर्त आधार वर्ग
│ │ ├── source.py # स्रोत कोड विश्लेषक (14 भाषाएँ)
│ │ ├── config.py # कॉन्फ़िगरेशन फ़ाइल विश्लेषक
│ │ └── certificate.py # X.509 प्रमाणपत्र विश्लेषक
│ └── reporters/ # आउटपुट जनरेटर
│ ├── json_reporter.py
│ └── html_reporter.py
└── tests/ # व्यापक परीक्षण सूट
SourceCodeAnalyzer — 14 प्रोग्रामिंग भाषाओं में पैटर्न मिलानConfigAnalyzer — YAML/JSON पार्सिंग + कॉन्फ़िग फ़ाइलों के लिए पैटर्न मिलानCertificateAnalyzer — मुख्य एल्गोरिदम और आकार निकालने के लिए X.509 पार्सिंगयोगदान का स्वागत है! शुरू करने का तरीका यहाँ है:
git clone https://github.com/mbennett-labs/crypto-scanner.git
cd crypto-scanner
pip install -e ".[dev]"
# सभी परीक्षण चलाएँ
pytest tests/ -v
# कवरेज के साथ चलाएँ
pytest tests/ -v --cov=crypto_scanner --cov-report=html
क्रिप्टो पैटर्न src/crypto_scanner/patterns.py में परिभाषित हैं। प्रत्येक पैटर्न में शामिल है:
git checkout -b feature/new-pattern)pytest tests/ -v)MIT लाइसेंस — विवरण के लिए LICENSE देखें।
Quantum Shield Labs संगठनों को पोस्ट-क्वांटम युग के लिए तैयार करने में मदद करता है:
Quantum Shield Labs द्वारा देखभाल के साथ बनाया गया
| आपूर्ति श्रृंखला की गहराई | आपकी निर्भरताओं में असुरक्षित क्रिप्टो है जो आप नहीं देखते |
| अनुपालन अनिवार्यताएँ | NIST PQC मानक (ML-KEM, ML-DSA) अब अंतिम रूप दे दिए गए हैं |
| CNSA 2.0 समय सीमा | NSA को 2033 तक क्वांटम-प्रतिरोधी एल्गोरिदम की आवश्यकता है |
| विकल्प | संक्षिप्त | विवरण |
|---|
--html | JSON के बजाय HTML रिपोर्ट उत्पन्न करें | |
--output | -o | रिपोर्ट को फ़ाइल में सहेजें (stdout के बजाय) |
--verbose | -v | विस्तृत स्कैनिंग प्रगति दिखाएँ |
--exclude | -e | अतिरिक्त बहिष्करण पैटर्न (दोहराने योग्य) |
--version | -V | संस्करण दिखाएँ और बाहर निकलें |
| एल्गोरिदम | कुंजी आकार | क्वांटम प्रभाव | अनुशंसित कार्रवाई |
|---|
| RSA | सभी (1024-4096+) | पूरी तरह से टूट गया | ML-KEM + ML-DSA में माइग्रेट करें |
| ECDSA/ECC | सभी वक्र | पूरी तरह से टूट गया | ML-DSA में माइग्रेट करें |
| DH/ECDH | सभी | कुंजी विनिमय टूट गया | ML-KEM में माइग्रेट करें |
| DSA | सभी | पूरी तरह से टूट गया | ML-DSA में माइग्रेट करें |
| एल्गोरिदम | समस्या | अनुशंसित कार्रवाई |
|---|
| MD5 | संघट्ट हमले, पूरी तरह से टूट गया | SHA-3 या SHA-256 से बदलें |
| SHA-1 | संघट्ट हमले प्रदर्शित | SHA-256+ से बदलें |
| DES | 56-bit कुंजी, मामूली रूप से टूटा | AES-256 से बदलें |
| 3DES | मीट-इन-द-मिडिल हमले | AES-256 से बदलें |
| AES-128 | ग्रोवर का एल्गोरिदम सुरक्षा कम करता है | AES-256 में अपग्रेड करें |
| एल्गोरिदम | स्थिति | अनुशंसित कार्रवाई |
|---|
| SHA-256 | सुरक्षित, ग्रोवर 128-bit तक कम करता है | SHA-3 में प्रवासन की योजना बनाएं |
| SHA-384 | सुरक्षित | विकास की निगरानी करें |
| SHA-512 | अच्छा क्वांटम प्रतिरोध | विकास की निगरानी करें |
| TLS 1.2 | सुरक्षित लेकिन पुराना | TLS 1.3 पसंद करें |
| एल्गोरिदम | स्थिति | नोट्स |
|---|
| AES-256 | क्वांटम-प्रतिरोधी | 128-bit पोस्ट-क्वांटम सुरक्षा |
| ChaCha20 | आधुनिक, सुरक्षित | अच्छा AES विकल्प |
| SHA-3 | नवीनतम NIST मानक | नई परियोजनाओं के लिए अनुशंसित |
| ML-KEM | पोस्ट-क्वांटम (Kyber) | NIST 2024 में मानकीकृत |
| ML-DSA | पोस्ट-क्वांटम (Dilithium) | NIST 2024 में मानकीकृत |
| एक्सटेंशन | भाषा |
|---|
.py, .pyw | Python |
.js, .mjs, .cjs | JavaScript |
.ts, .tsx | TypeScript |
.java | Java |
.go | Go |
.rs | Rust |
.c, .h, .cpp, .hpp | C/C++ |
.cs | C# |
.rb | Ruby |
.php | PHP |
.swift | Swift |
.kt, .kts | Kotlin |
.scala | Scala |
| एक्सटेंशन | प्रारूप |
|---|
.yaml, .yml | YAML |
.json | JSON |
.toml | TOML |
.ini, .cfg, .conf, .config | INI/Config |
.env | पर्यावरण चर |