Database
 sql >> डेटाबेस >  >> RDS >> Database

फील्डशील्ड एसडीके

IRI एक सॉफ़्टवेयर डेवलपमेंट किट (SDK) प्रदान करता है, जिससे फ़ील्डशील्ड उपयोगकर्ताओं को जावा और .NET प्रोजेक्ट्स में कॉलम-स्तरीय एन्क्रिप्शन, डिक्रिप्शन, हैशिंग और रीडेक्शन एल्गोरिदम लागू करने में मदद मिलती है, ताकि इन-सीटू या डायनेमिक डेटा मास्किंग आवश्यकताओं को पूरा किया जा सके। इस लेख में लाइब्रेरी और इसके द्वारा समर्थित फ़ील्ड/कॉलम-स्तरीय डेटा सुरक्षा कार्यों को शामिल किया गया है।

दिखाए गए उदाहरणों के लिए कोड C# में है, हालांकि फ़ंक्शन कॉल सभी .NET भाषाओं में समान होंगे। जावा समान विधियों का उपयोग करता है, लेकिन कुछ को उपयोग करने के लिए एक अतिरिक्त पैरामीटर की आवश्यकता होती है; जहां आवश्यक हो, उन मामलों का उल्लेख किया जाता है।

एसडीके में दो प्रकार के वर्ग हैं:एन्क्रिप्शन वर्ग और रूपांतरण वर्ग। एन्क्रिप्शन और डिक्रिप्शन वर्ग हैं:

  • AES256
  • एएससीआईआई
  • अल्फ़ान्यूमेरिक

रूपांतरण वर्ग हैं:

  • हेक्साडेसिमल
  • बेस64
  • हैश Sha256
  • चरित्र बदलना।

एन्क्रिप्शन और डिक्रिप्शन क्लासेस

<वर्ग प्रकार> obj=नया <वर्ग प्रकार>();
int iResult =obj.begin();
obj.setPass("TEST");
स्ट्रिंग आउटपुट =obj.doTransform ("टेस्टस्ट्रिंग");
obj.end();

  1. फ़ील्डशील्ड एन्क्रिप्शन क्लास का उपयोग करने के लिए, वांछित एन्क्रिप्शन प्रकार का एन्क्रिप्शन क्लास ऑब्जेक्ट बनाएं। विकल्प हैं:
  • enc_aes256
  • enc_fp_ascii
  • enc_fp_alphanum

(जहां fp प्रारूप-संरक्षण एन्क्रिप्शन को संदर्भित करता है)

  1. प्रारंभ() विधि का उपयोग करके ऑब्जेक्ट सेट करें।
  2. सेटपास() पद्धति का उपयोग करके एन्क्रिप्शन वर्ग के लिए एक पासवर्ड सेट करें।
  3. एक स्ट्रिंग पैरामीटर (एन्क्रिप्ट की जाने वाली स्ट्रिंग) के साथ doTransform() विधि को कॉल करें। वापसी मूल्य नया एन्क्रिप्टेड मूल्य है।
  4. एक बार समाप्त होने के बाद, एन्क्रिप्शन क्लास ऑब्जेक्ट को end() विधि से हटा दें।

जावा में इन फ़ंक्शन का उपयोग करने के लिए, आपको सभी फ़ंक्शन कॉल के लिए एक अतिरिक्त पैरामीटर की आवश्यकता होती है। पैरामीटर ऑब्जेक्ट के लिए एक पॉइंटर है जो कॉल से getptr() पर आता है।

जावा में उदाहरण start() कॉल:obj.begin(obj.getptr());

चुने गए एन्क्रिप्शन वर्ग के डिक्रिप्शन मान का उपयोग करने के लिए, "एनएनसी" को "डीसी" से बदलें। शेष विधि कॉल समान होंगी।

उदाहरण enc_aes256 dec_aes256 बन जाता है।

रूपांतरण कक्षाएं

हेक्स / बेस64 / हैश शा256

<वर्ग प्रकार> obj =नया <वर्ग प्रकार> ();
स्ट्रिंग एन्कोडेड =obj। <वर्ग एन्कोड/डीकोड विधि> (इनपुटस्ट्रिंग, इनपुट। लंबाई);

वर्ण बदलें

int[] स्थिति ={0,4};
replace_char obj =new replace_char();
string एन्कोडेड =obj.maskString(inputString, '#', position);

  1. फ़ील्डशील्ड रूपांतरण वर्ग का उपयोग करने के लिए, वांछित रूपांतरण प्रकार का रूपांतरण वर्ग ऑब्जेक्ट बनाएं। विकल्प हैं:
  • हेक्स
  • बेस64
  • hash_sha256
  • बदलें_चार
  1. किसी मान को एन्कोड/डिकोड करने के लिए, चुनी गई क्लास की एनकोड/डिकोड विधि को कॉल करें। इस विधि को दो मापदंडों की आवश्यकता है; एन्कोड/डीकोड करने के लिए स्ट्रिंग, और एन्कोड करने के लिए स्ट्रिंग की लंबाई। विधि एन्कोडेड/डिकोडेड स्ट्रिंग लौटाती है।
  • hex_encode/hex_decode
  • base64_encode/base64_decode
  • sha256_hash
  • मास्कस्ट्रिंग
  1. sha256_hash विधि .NET में स्थिर है और इसे स्थिर हैश_sha256 ऑब्जेक्ट से कहा जाता है। जावा में, इसे हैश_शा256 ऑब्जेक्ट के उदाहरण से कहा जाता है।
  2. maskString को अन्य विधियों की तुलना में भिन्न पैरामीटर की आवश्यकता होती है। तीन मापदंडों की आवश्यकता है:पहला वर्णों को बदलने के लिए स्ट्रिंग है; दूसरा उनके साथ बदलने वाला चरित्र है; और तीसरा एक द्वि-आयामी सरणी है जिसमें प्रारंभ करने के लिए स्थिति का मान और प्रतिस्थापित करने के लिए वर्णों की लंबाई शामिल है।

जावा में hash_sha256 वर्ग का उपयोग करने के लिए, आपको सभी फ़ंक्शन कॉल के लिए एक अतिरिक्त पैरामीटर की आवश्यकता होती है। पैरामीटर ऑब्जेक्ट के लिए एक पॉइंटर है जो कॉल से getptr() पर आता है।

उदाहरण sha256_hash() जावा में कॉल:obj.sha256_hash(obj.getptr(), input, input.length());

जावा में प्रयुक्त एन्क्रिप्शन का एक उदाहरण नीचे दिखाया गया है। यह प्रोग्राम Oracle डेटाबेस से Phone_Number कॉलम को पुनः प्राप्त करता है और फ़ील्डशील्ड के प्रारूप-संरक्षण अल्फ़ान्यूमेरिक एन्क्रिप्शन फ़ंक्शन का उपयोग करके इसे एन्क्रिप्ट करता है।

एसडीके में कार्य मुख्य फील्डशील्ड पैकेज के साथ संगत हैं ताकि आप एक में एन्क्रिप्ट कर सकें और दूसरे में डिक्रिप्ट कर सकें, उदाहरण के लिए। SDK का उपयोग करने वाले किसी भी प्रश्न या तकनीकी सहायता के लिए, अपने IRI प्रतिनिधि से संपर्क करें।


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. समुच्चय और विभाजन

  2. आपके सबसे कीमती कब्जे का ट्रैक रखने के लिए एक डेटा मॉडल

  3. बिक्री रिकॉर्ड करने के लिए एक डेटाबेस मॉडलिंग। भाग 1

  4. हेकाटन विद ए ट्विस्ट:इन-मेमोरी टीवीपी - भाग 1

  5. आईआरआई कार्यक्षेत्र में डेटा प्रतिकृति