Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
AdvSim.Cryptography — Simple and sane cryptographic wrapper library. | Kitploit
उपकरण/GitHubGitHub/fuzzysecurity/advsim.cryptography
Encryption/Decryption ToolsCryptographyUtilities & FrameworksAuthentication
GitHubfuzzysecurity/advsim.cryptography

AdvSim.Cryptography

Simple and sane cryptographic wrapper library.

रिपॉजिटरी देखें
3353 साल पहलेKitploit द्वारा समीक्षित

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

Release

AdvSim.Cryptography

AdvSim.Cryptography NuGet में क्रिप्टोग्राफ़िक रैपर फ़ंक्शनों का एक सेट शामिल है, जो पुन: प्रयोज्य हैं, उचित डिफ़ॉल्ट के साथ कॉन्फ़िगर किए गए हैं और उपयोग में आसान हैं। अधिक विवरण नीचे विभिन्न उप-शीर्षकों के अंतर्गत उपलब्ध हैं।

  • सममित
    • कुंजी सामग्री निर्माण
    • AES
    • ट्रिपल DES
    • RC4
    • RC2
    • मल्टी-बाइट XOR
    • XTEA
  • असममित
    • एलिप्टिक-कर्व डिफी–हेलमैन (ECDH)
    • RSA
  • विंडोज़ लोकल
    • एंट्रॉपी निर्माण
    • DPAPI लोकल मशीन
    • DPAPI वर्तमान उपयोगकर्ता
  • विविध
    • TOTP

NuGet संगतता

AdvSim.Cryptography NuGet विभिन्न प्रकार के .Net संस्करणों का समर्थन करता है। सामान्यतः लाइब्रेरी में शामिल फ़ंक्शनों की लक्षित फ्रेमवर्क पर अच्छी कवरेज होती है। जहाँ फ़ंक्शन विशिष्ट फ्रेमवर्क तक सीमित हैं, वहाँ उस निर्भरता को उजागर करने के लिए एक बैज जोड़ा गया है।

NuGet URL: https://www.nuget.org/packages/AdvSim.Cryptography

कुंजी सामग्री

जहाँ क्रिप्टोग्राफ़िक कंस्ट्रक्टर के भाग के रूप में कुंजी सामग्री प्रदान की जाती है, वहाँ एन्क्रिप्शन और डिक्रिप्शन ऑपरेशनों को सीड करने के लिए स्यूडो-रैंडम बाइट ऐरे लौटाने हेतु Rfc2898DeriveBytes का उपयोग किया जाता है। ये बाइट ऐरे उच्च गुणवत्ता वाले होते हैं, साथ ही यह भी सुनिश्चित करते हैं कि समान कुंजी सामग्री के साथ समान फ़ंक्शन को कॉल करने पर समान स्यूडो-रैंडम सीड प्राप्त हो।

उपयोग

सममित

AES

Availability

यह फ़ंक्शन एक बाइट ऐरे लेता है और कंस्ट्रक्टर में प्रदान की गई कुंजी सामग्री का उपयोग करके उसे या तो एन्क्रिप्ट या डिक्रिप्ट करता है। पूरा होने पर यह एक बाइट ऐरे लौटाता है।

root@kitploit:~
AES test = new AES("Lovecraft");
Byte[] bEncrypted = test.Encrypt(bTestData);
Byte[] bDecrypted = test.Decrypt(bEncrypted);

ट्रिपल DES

Availability

यह फ़ंक्शन एक बाइट ऐरे लेता है और कंस्ट्रक्टर में प्रदान की गई कुंजी सामग्री का उपयोग करके उसे या तो एन्क्रिप्ट या डिक्रिप्ट करता है। पूरा होने पर यह एक बाइट ऐरे लौटाता है।

root@kitploit:~
TripleDES test = new TripleDES("Lovecraft");
Byte[] bEncrypted = test.Encrypt(bTestData);
Byte[] bDecrypted = test.Decrypt(bEncrypted);

RC4

Availability

यह फ़ंक्शन एक बाइट ऐरे लेता है और कंस्ट्रक्टर में प्रदान की गई कुंजी सामग्री का उपयोग करके उसे या तो एन्क्रिप्ट या डिक्रिप्ट करता है। पूरा होने पर यह एक बाइट ऐरे लौटाता है।

root@kitploit:~
RC4 test = new RC4("Lovecraft");
Byte[] bEncrypted = test.Encrypt(bTestData);
Byte[] bDecrypted = test.Decrypt(bEncrypted);

RC2

Availability

यह फ़ंक्शन एक बाइट ऐरे लेता है और कंस्ट्रक्टर में प्रदान की गई कुंजी सामग्री का उपयोग करके उसे या तो एन्क्रिप्ट या डिक्रिप्ट करता है। पूरा होने पर यह एक बाइट ऐरे लौटाता है।

root@kitploit:~
RC2 test = new RC2("Lovecraft");
Byte[] bEncrypted = test.Encrypt(bTestData);
Byte[] bDecrypted = test.Decrypt(bEncrypted);

मल्टी-बाइट XOR

Availability

यह फ़ंक्शन एक बाइट ऐरे लेता है और कंस्ट्रक्टर में प्रदान की गई कुंजी सामग्री का उपयोग करके उसे या तो एन्क्रिप्ट या डिक्रिप्ट करता है। पूरा होने पर यह एक बाइट ऐरे लौटाता है।

root@kitploit:~
MultiXOR test = new MultiXOR("Lovecraft");
Byte[] bEncrypted = test.Encrypt(bTestData);
Byte[] bDecrypted = test.Decrypt(bEncrypted);

XTEA

Availability

यह फ़ंक्शन एक बाइट ऐरे लेता है और कंस्ट्रक्टर में प्रदान की गई कुंजी सामग्री का उपयोग करके उसे या तो एन्क्रिप्ट या डिक्रिप्ट करता है। पूरा होने पर यह एक बाइट ऐरे लौटाता है।

root@kitploit:~
XTEA test = new XTEA("Lovecraft");
Byte[] bEncrypted = test.Encrypt(bTestData);
Byte[] bDecrypted = test.Decrypt(bEncrypted);

असममित

एलिप्टिक-कर्व डिफी–हेलमैन (ECDH)

Availability Availability

यहाँ ध्यान दें कि v2.0.0 में ECDH NuGet में उपलब्ध सभी .Net संस्करणों पर समर्थित है। हालाँकि, कुछ वास्तव में संदिग्ध .Net डिज़ाइन निर्णयों के कारण, सभी समर्थित लक्ष्यों के बीच इंटरऑप प्राप्त करना सरल नहीं है।

परिणामस्वरूप, Framework < .Net 4.7 और बाकी सबके बीच कार्यान्वयन भिन्नताएँ मौजूद हैं। सफलतापूर्वक कुंजी विनिमय करने के लिए दोनों क्लाइंट एक ही समूह में आने चाहिए। उदाहरण के लिए, यदि आपको एक क्लाइंट .Net 6 पर और दूसरा .Net 4.5.1 पर चाहिए, तो आपको इसके बजाय RSA का उपयोग करना चाहिए।

.Net संस्करणों के बारे में अधिक समझने के लिए आप निम्नलिखित संसाधन देख सकते हैं।

  • https://learn.microsoft.com/en-us/dotnet/framework/migration-guide/versions-and-dependencies

उपयोग

Framework < .Net 4.7

ये लक्ष्य केवल nistP256 का समर्थन करते हैं और लाइब्रेरी का उपयोग निम्नानुसार कर सकते हैं।

root@kitploit:~
// Initialize both clients
ECDH test1 = new ECDH();
ECDH test2 = new ECDH();

// Exchange public keys
Byte[] bPublic1 = test1.GetPublicKeyArray();
Byte[] bPublic2 = test2.GetPublicKeyArray();

// Derive
test1.DeriveSharedKey(bPublic2);
test2.DeriveSharedKey(bPublic1);

// Encrypt / Decrypt
Byte[] bEncrypted1 = test1.Encrypt(bTestData);
Byte[] bDecrypted2 = test2.Decrypt(bEncrypted1);

.Net 4.7+ || Standard 2.1 || .Net 6

ये लक्ष्य कंस्ट्रक्टर के लिए तर्क के रूप में एक कर्व लेते हैं।

root@kitploit:~
public enum ECCurveType  
{  
    brainpoolP160r1,  
    brainpoolP160t1,  
    brainpoolP192r1,  
    brainpoolP192t1,  
    brainpoolP224r1,  
    brainpoolP224t1,  
    brainpoolP256r1,  
    brainpoolP256t1,  
    brainpoolP320r1,  
    brainpoolP320t1,  
    brainpoolP384r1,  
    brainpoolP384t1,  
    brainpoolP512r1,  
    brainpoolP512t1,  
    nistP256,  
    nistP384,  
    nistP521  
}

उपयोग नीचे दिखाया गया है।

root@kitploit:~
// Initialize both clients
ECDH test1 = new ECDH(ECDH.ECCurveType.nistP521);
ECDH test2 = new ECDH(ECDH.ECCurveType.nistP521);

// Exchange public keys
Byte[] bPublic1 = test1.GetPublicKeyArray();
Byte[] bPublic2 = test2.GetPublicKeyArray();

// Derive
test1.DeriveSharedKey(bPublic2);
test2.DeriveSharedKey(bPublic1);

// Encrypt / Decrypt
Byte[] bEncrypted1 = test1.Encrypt(bTestData);
Byte[] bDecrypted2 = test2.Decrypt(bEncrypted1);

RSA

Availability

ध्यान दें कि यह कार्यक्षमता आवश्यक रूप से दो क्लाइंटों की आवश्यकता रखती है, क्योंकि सार्वजनिक कुंजियों को साझा रहस्य प्राप्त करने के लिए विनिमय करना आवश्यक नहीं है, जैसा कि ECDH के मामले में होता है। बेशक, जैसा ऊपर बताया गया है, आप अपनी सार्वजनिक कुंजी को नेटवर्क पर किसी भिन्न क्लाइंट को भेज सकते हैं, जो तब केवल उस डेटा को एन्क्रिप्ट कर सकता है जिसे केवल आप ही डिक्रिप्ट कर सकते हैं।

उपयोग

root@kitploit:~
RSA test = new RSA();
Byte[] bPublicKey = test.GetPublicKeyArray();
Byte[] bEncrypted = test.Encrypt(bPublicKey, bTestData);
Byte[] bDecrypted = test.Decrypt(bEncrypted);

विंडोज़ लोकल

DPAPI लोकल मशीन

Availability

एन्क्रिप्ट और डिक्रिप्ट किया जाने वाला डेटा मशीन के दायरे तक सीमित होता है। डेटा को होस्ट के बाहर डिक्रिप्ट नहीं किया जा सकता।

root@kitploit:~
// Without entropy
DPAPI test = new DPAPI();
Byte[] bEncrypted = test.EncryptUserDPAPI(bTestData);
Byte[] bDecrypted = test.DecryptUserDPAPI(bEncrypted);

// With entropy
DPAPI test = new DPAPI("Lovecraft");
Byte[] bEncrypted = test.EncryptUserDPAPI(bTestData);
Byte[] bDecrypted = test.DecryptUserDPAPI(bEncrypted);

DPAPI वर्तमान उपयोगकर्ता

Availability

एन्क्रिप्ट और डिक्रिप्ट किया जाने वाला डेटा वर्तमान उपयोगकर्ता के दायरे तक सीमित होता है। डेटा को किसी भिन्न उपयोगकर्ता संदर्भ में डिक्रिप्ट नहीं किया जा सकता।

root@kitploit:~
// Without entropy
DPAPI test = new DPAPI();
Byte[] bEncrypted = test.EncryptMachineDPAPI(bTestData);
Byte[] bDecrypted = test.DecryptMachineDPAPI(bEncrypted);

// With entropy
DPAPI test = new DPAPI("Lovecraft");
Byte[] bEncrypted = test.EncryptMachineDPAPI(bTestData);
Byte[] bDecrypted = test.DecryptMachineDPAPI(bEncrypted);

विविध

TOTP

Availability

एक समय-आधारित एक-बार पासवर्ड (TOTP) का उपयोग, क्रियाएँ निष्पादित करते समय यह सत्यापित करने के लिए एक अतिरिक्त जाँच के रूप में किया जा सकता है कि वे प्रामाणिक हैं। लाइब्रेरी द्वारा उत्पन्न TOTP एक पूरे UtcNow मिनट के लिए मान्य होते हैं। इन संख्यात्मक रहस्यों का उपयोग सममित एन्क्रिप्शन एल्गोरिदम के लिए घूमती हुई कुंजियों को गतिशील रूप से सीड करने के लिए भी किया जा सकता है। यदि क्लाइंट विभिन्न मशीनों पर समान सीड का उपयोग करते हैं, तो उन्हें समान TOTP प्राप्त होगा।

उपयोग

root@kitploit:~
// Generate a TOTP using a string seed
TOTP test = new TOTP("Lovecraft");
Console.WriteLine("[+] TOPT Code     : "  + oOTP.Code);
Console.WriteLine("[+] TOPT Last Code: "  + oOTP.LastCode);
Console.WriteLine("[+] TOPT Validity : "  + oOTP.Seconds);

// Validate TOTP based on string seed
Boolean bValid = test.ValidateTOTP("Lovecraft", oTOTP.Code);

// Validate TOTP with forgiveness, this allows the previous TOTP
// to also be counted as valid
Boolean bValid = test.ValidateTOTP("Lovecraft", oTOTP.LastCode, true);
टूल डाउनलोड करें