ویب پر گرفت اور تبدیل کرنے کے اوزار

گرفتاریوں کے مواد کو کیسے بچایا جائے؟

خفیہ گرفتاری

قوانین کے دور میں جیسے جنرل ڈیٹا پروٹیکشن ریگولیشن ، یا جی ڈی پی آر صارف کی معلومات کی حفاظت کرنا پہلے سے کہیں زیادہ اہم ہو گیا ہے۔ جب گرفتاری لی جاتی ہے تو ہمارے سرورز پر اسے تھوڑی دیر کے لئے محفوظ کیا جاتا ہے تاکہ اسے ڈاؤن لوڈ کیا جا سکے۔ جب کہ ہمارے سرور محفوظ ہیں اور ہم اجازت کے بغیر کسی صارف کے گرفتاریوں کا معائنہ نہیں کرتے ہیں۔ ذاتی معلومات کو سنبھالتے وقت کچھ منظرناموں میں یہ اتنا تحفظ نہیں ہے۔

پہلی ممکنہ بہتری یہ ہے کہ آپ کیشے کی لمبائی کو صفر منٹ میں تبدیل کر کے کیشے کی گرفت میں نہ آجائیں اکاؤنٹ کا صفحہ. تاہم نوٹ کریں ، اس کا مطلب یہ ہوگا کہ گرفتاری زیادہ دیر تک ڈاؤن لوڈ کرنے کے لئے دستیاب نہیں ہوگی لہذا اسے تخلیق کرنے کے فورا بعد ڈاؤن لوڈ کی جانی چاہئے۔

سیکیورٹی کی ایک اور ممکنہ تشویش حساس ڈیٹا ہمارے پاس بھیجنے کا اصل عمل ہے۔ اس ڈیٹا کو محفوظ بنانے کے ل you آپ کو پہلے ہونا چاہئے SSL کو فعال کریں، پھر جب ہمارے پاس ڈیٹا موصول ہوجائے اور اس پر عملدرآمد ہوجائے ، جو بہت جلد ہوجاتا ہے ، تو یہ یقینی بنانے کے لئے کہ ہمارے نظام سے خود بخود حذف ہوجائے گا تاکہ سیکیورٹی کی کوئی خلاف ورزی نہ ہو۔

پی ڈی ایف یا DOCX کیپچرس میں مزید سیکیورٹی بھی شامل کی جاسکتی ہے دستاویزات کی حفاظت. یہ یقینی بناتا ہے کہ صرف وہی صارف جو محفوظ پاس ورڈ کے حامل ہیں وہ محفوظ فائل تک رسائی حاصل کرسکتے ہیں۔

تاہم ، اگر آپ انتہائی حساس معلومات جیسے ہسپتال کے ریکارڈ وغیرہ پر قبضہ کر رہے ہیں اور اضافی سطح کی حفاظت چاہتے ہیں تو آپ نتیجہ خیزوں کو خود کو خفیہ کرسکتے ہیں۔ ایسا کرنے کے ل you آپ ہر درخواست کے ساتھ ایک خفیہ کاری کی کلید کی وضاحت کریں ، یہ چابیاں GrabzIt کے ذریعہ محفوظ نہیں ہیں۔ اس کلید کو معلومات کی حفاظت کرنے والے کی گرفت کو خفیہ کرنے کے لئے استعمال کیا جائے گا۔ چونکہ ہم کلید کو محفوظ نہیں کرتے ہیں ہم آپ کو مرموز شدہ گرفتاریوں کی بازیابی میں مدد نہیں کرسکتے ہیں۔ ایک بار جب گرفتاری موصول ہوجائے تو اس کی ڈکرپٹ کرنے کے لئے آپ نے پہلے بنائی ہوئی کلید کا استعمال کریں۔

ذیل میں مثال کے طور پر ایک خفیہ نگاری سے محفوظ کلید بنائی گئی ہے اور اسے GrabzIt کو بھیجی گئی ہے ، اس کے بعد یہ گرفتاری کو خفیہ کرنے کے لئے استعمال ہوتا ہے۔ اس کے بعد اسی خفیہ کاری کی چابی کو نتیجہ کو خفیہ کرنے کے لئے استعمال کیا جاتا ہے۔

GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");
grabzIt.UseSSL(true);

string encryptionKey = grabzIt.CreateEncryptionKey();

ImageOptions options = new ImageOptions();
options.EncryptionKey = encryptionKey;

grabzIt.URLToImage("http://www.spacex.com", options);
GrabzItFile encryptedCapture = grabzIt.SaveTo();

GrabzItFile decryptedCapture = grabzIt.Decrypt(encryptedCapture, encryptionKey);

ذیل میں مثال کے طور پر ایک خفیہ نگاری سے محفوظ کلید بنائی گئی ہے اور اسے GrabzIt کو بھیجی گئی ہے ، اس کے بعد یہ گرفتاری کو خفیہ کرنے کے لئے استعمال ہوتا ہے۔ اس کے بعد اسی خفیہ کاری کی چابی کو نتیجہ کو خفیہ کرنے کے لئے استعمال کیا جاتا ہے۔

جاوا 6 ، 7 اور 8 کے ساتھ خفیہ کردہ گرفتاریوں کو استعمال کرنے کے ل please براہ کرم جاوا کرپٹوگرافی ایکسٹینشن (جے سی ای) لا محدود طاقت کے دائرہ اختیار کی پالیسی فائلیں انسٹال کریں۔ into جاوا تنصیب کے فولڈرز کے تمام / جیر / لیب / سیکیورٹی / فولڈرز۔

GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");
grabzIt.UseSSL(true);

String encryptionKey = grabzIt.CreateEncryptionKey();

ImageOptions options = new ImageOptions();
options.setEncryptionKey(encryptionKey);

grabzIt.URLToImage("http://www.spacex.com", options);
GrabzItFile encryptedCapture = grabzIt.SaveTo();

GrabzItFile decryptedCapture = grabzIt.Decrypt(encryptedCapture, encryptionKey);

ذیل میں مثال کے طور پر ایک خفیہ نگاری سے محفوظ کلید خود بخود تخلیق کی جاتی ہے اور اسے GrabzIt کو بھیجی جاتی ہے ، اس کے بعد یہ گرفتاری کو خفیہ کرنے کے لئے استعمال ہوتی ہے۔ اس کے بعد اسی خفیہ کاری کی کو ڈیٹا یو آر کے طریقہ کار پر عمل درآمد کرکے نتیجہ کو خود بخود خفیہ کرنے کے لئے استعمال کیا جاتا ہے ، جس کے بعد کال بیک طریقہ میں پڑھا جاسکتا ہے۔

<html>
<head>
<script src="https://cdn.jsdelivr.net/npm/@grabzit/js@3.3.7/grabzit.min.js"></script>
</head>
<body>
<img id="capture"></img>
function callback(dataUri)
{
    document.getElementById('capture').src = dataUri;
}
<script type="text/javascript">
GrabzIt("Sign in to view your Application Key").UseSSL().Encrypt().ConvertURL("http://www.spacex.com").DataURI(callback, true);
</script>
</body>
</html>

ذیل میں مثال کے طور پر ایک خفیہ نگاری سے محفوظ کلید بنائی گئی ہے اور اسے GrabzIt کو بھیجی گئی ہے ، اس کے بعد یہ گرفتاری کو خفیہ کرنے کے لئے استعمال ہوتا ہے۔ اس کے بعد اسی خفیہ کاری کی چابی کو نتیجہ کو خفیہ کرنے کے لئے استعمال کیا جاتا ہے۔

var grabzit = require('grabzit');

var client = new grabzit("Sign in to view your Application Key", "Sign in to view your Application Secret");
client.use_ssl(true);

var encryptionKey = client.create_encryption_key();

client.url_to_image("http://www.spacex.com", {"encryptionKey":encryptionKey});
client.save_to(null, function (error, result){
    if (error != null){
        throw error;
    }
    var decryptedBytes = client.decrypt(result, encryptionKey);
}); 	

بدقسمتی سے پرل AES کے خفیہ کاری کو مقامی طور پر ڈیکرپٹ نہیں کرسکتے ہیں اور اس کے لئے بیرونی عملدرآمد یا سی تالیف کی ضرورت ہے۔ لہذا ہم نے اپنے پرل API میں اس فعالیت کو شامل نہیں کیا ہے اس کے بجائے آپ نیچے دی گئی گائیڈ کا استعمال کرکے خود ہی اس فعالیت کو شامل کرسکتے ہیں۔

$grabzIt = GrabzItClient->new("Sign in to view your Application Key", "Sign in to view your Application Secret");
$grabzIt->UseSSL(1);

$options = GrabzItImageOptions->new();
$options->encryptionKey("UUK2Xo9OLT2dFvN0wPBGOMZRYqD6WxqFtrZK9YrG+Hg=");
$grabzIt->URLToImage("http://www.spacex.com", $options);
//needs to be decrypted
$data = $grabzIt->SaveTo();

ذیل میں مثال کے طور پر ایک خفیہ نگاری سے محفوظ کلید بنائی گئی ہے اور اسے GrabzIt کو بھیجی گئی ہے ، اس کے بعد یہ گرفتاری کو خفیہ کرنے کے لئے استعمال ہوتا ہے۔ اس کے بعد اسی خفیہ کاری کی چابی کو نتیجہ کو خفیہ کرنے کے لئے استعمال کیا جاتا ہے۔

$grabzIt = new \GrabzIt\GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");
$grabzIt->UseSSL(true);

$encryptionKey = $grabzIt->CreateEncryptionKey();

$options = new \GrabzIt\GrabzItImageOptions();
$options->setEncryptionKey($encryptionKey);

$grabzIt->URLToImage("http://www.spacex.com", $options);
$encryptedData = $grabzIt->SaveTo();

$decryptedData = $grabzIt->Decrypt($encryptedData, $encryptionKey);

ذیل میں مثال کے طور پر ایک خفیہ نگاری سے محفوظ کلید بنائی گئی ہے اور اسے GrabzIt کو بھیجی گئی ہے ، اس کے بعد یہ گرفتاری کو خفیہ کرنے کے لئے استعمال ہوتا ہے۔ اس کے بعد اسی خفیہ کاری کی چابی کو نتیجہ کو خفیہ کرنے کے لئے استعمال کیا جاتا ہے۔

grabzIt = GrabzItClient.GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret")
grabzIt.UseSSL(True)

encryptionKey = grabzIt.CreateEncryptionKey()

options = GrabzItImageOptions.GrabzItImageOptions()
options.encryptionKey = encryptionKey

grabzIt.URLToImage("http://www.spacex.com", options)
encryptedData = grabzIt.SaveTo()

decryptedData = grabzIt.Decrypt(encryptedData, encryptionKey)

ذیل میں مثال کے طور پر ایک خفیہ نگاری سے محفوظ کلید بنائی گئی ہے اور اسے GrabzIt کو بھیجی گئی ہے ، اس کے بعد یہ گرفتاری کو خفیہ کرنے کے لئے استعمال ہوتا ہے۔ اس کے بعد اسی خفیہ کاری کی چابی کو نتیجہ کو خفیہ کرنے کے لئے استعمال کیا جاتا ہے۔

grabzIt = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret")
grabzIt.use_ssl(true)

encryptionKey = grabzIt.create_encryption_key()

options = GrabzIt::ImageOptions.new()
options.encryptionKey = encryptionKey

grabzIt.url_to_image("http://www.spacex.com", options)
encryptedData = grabzIt.save_to()

decryptedData = grabzIt.decrypt(encryptedData, encryptionKey)

کس طرح GrabzIt کی گرفتاری کا خفیہ کاری کام کرتی ہے

یہ گائیڈ بہت تکنیکی ہے اور اس کا مقصد ڈویلپرز کو یہ سمجھنے میں مدد کرنا ہے کہ ہماری خفیہ کاری کیسے کام کرتی ہے۔ اس کا خاص استعمال پرل ڈویلپرز کے لئے ہونا چاہئے ، کیونکہ زبان میں اوپن سورس پرل پیکیج نہیں ہوتا ہے جس میں اوپن ایس ایس ایل جیسے تھرڈ پارٹی ٹولز کی تکمیل یا انسٹالیشن کی ضرورت نہیں ہوتی ہے۔

خفیہ کردہ کیپچرز 256 بٹ ایڈوانسڈ انکرپشن اسٹینڈرڈ (AES) خفیہ کاری کا استعمال کرتے ہیں۔ اس میں عمل میں سائپر بلاک چییننگ (سی بی سی) بلاک سائفر موڈ بھی استعمال ہوتا ہے۔

GrabzIt کے لئے کیپچر کو خفیہ کرنے کے لئے ایک بیس 64 انکرپشن کلید جو 44 حروف کو طویل عرصے سے آپشن آبجیکٹ پر منتقل کرنے کی ضرورت ہے۔ اس خفیہ کاری کی کلید کو بنانے کے ل you آپ کو 32 بے ترتیب خفیہ نگاری سے محفوظ بائٹس کا انتخاب کرنا چاہئے۔ اس کے بعد انہیں بیس 64 پر انکوڈ کیا جانا چاہئے۔ چونکہ وہ خفیہ نگاری سے محفوظ بائٹ ہیں ان کی پیشن گوئی کرنا مشکل ہوگا اور اس لئے اس میں سختی لانا مشکل ہے۔

جب GrabzIt کو ایک خفیہ کاری کی کلید کے ساتھ گرفتاری کی درخواست موصول ہوتی ہے تو ، گرفتاری کو خفیہ کردیا جاتا ہے اور فائل کے آغاز میں ابتداء ویکٹر (IV) داخل کیا جاتا ہے۔ یہ چہارم 16 بائٹ لمبا ہے اور اسے ڈیکرپشن سے پہلے فائل کے سامنے سے ہٹانے کی ضرورت ہے۔ ڈکرپٹنگ کو اہل بنانے کے لئے IV کو AES الگورتھم میں بھی ہونا ضروری ہے۔ جب کیپچر انکرپٹ ہوجاتا ہے تو فائل میں کوئی پیڈنگ شامل نہیں کی جاتی ہے لہذا جب ڈیکریپٹنگ پیڈنگ کو غیر فعال کرنے کی ضرورت ہے۔

یاد رکھنا اگر آپ نے ہمارے موجودہ کلائنٹ API میں سے کسی میں بہتری پیدا کی ہے یا پوری نئی زبان کے ل you ، آپ اسے برادری کے ساتھ اشتراک کرسکتے ہیں۔ گاٹہوب.