/ দেব / ইউরানডমের বিকল্প আছে কি?


21

/ Dev / [u] এলোমেলোভাবে কিছু দ্রুত উপায় আছে? কখনও কখনও, আমার মতো জিনিসগুলি করা দরকার

বিড়াল / দেব / ইউরানডম> / দেব / এসডিবি

এলোমেলো ডিভাইসগুলি "খুব" সুরক্ষিত এবং দুর্ভাগ্যক্রমে এটির জন্য খুব ধীর। আমি জানি যে wipeসুরক্ষিত মোছার জন্য এবং একই ধরণের সরঞ্জাম রয়েছে তবে আমি মনে করি লিনাক্সে কিছু অন বোর্ড রয়েছে board


Stackoverflow উপর সমতুল্য: stackoverflow.com/questions/841356/...
ডেভিড জেড


1
ডিডি কি এটি করার আরও ভাল উপায় নয় .. সম্ভবত ইউইউসি পুরষ্কারের জন্য প্রার্থী?
টম ও'কনর

উত্তর:


12

আপনি যদি কোনও হার্ড ড্রাইভ (বা ফাইল) মুছে ফেলার জন্য "সুরক্ষিত" মুছে ফেলার চেষ্টা করছেন তবে আপনার ছেঁড়া ইউটিলিটিটি দেখতে হবে।

পূর্ববর্তী পোস্টারগুলি ইঙ্গিত হিসাবে, / dev / * এলোমেলো ডিভাইসগুলি এলোমেলো তথ্যের ক্ষুদ্র অংশগুলির উত্স হিসাবে ব্যবহৃত হতে বোঝানো হয়।


1
ম্যান পৃষ্ঠা অনুসারে, 'শ্র্রেড' ব্যবহার করে / ডিভ / ইউরানডম। সুতরাং ডিস্কটি মুছে ফেলার জন্য উত্তম উত্তর দেওয়ার সময় এটি / dev / urandom থেকে অন্য কোনও প্রযুক্তি পড়ার জন্য একটি স্পিডআপ দেয় না। ('শ্যাডড' ব্যবহার করা হলে অন্য টিপস: সর্বাধিক লোকেরা
দৈত্যিক

4
প্রকৃতপক্ষে শেডটি / ডেভ / ইউরানডমের চেয়ে অনেক দ্রুত। আমার ধারণা এটি কোনও সিড হিসাবে / dev / urandom বা / dev / এলোমেলো ব্যবহার করে নিজস্ব সিউডোর্যান্ডম ডেটা সরবরাহ করে।
thomasrutter

24

দুর্ভাগ্যক্রমে লিনাক্সের ইউরেনডমের খারাপ প্রয়োগ রয়েছে। আপনি এসইএস 256-সিটিআর একটি এলোমেলো কী সহ ব্যবহার করতে পারেন এবং প্রতি সেকেন্ডে কয়েকশ মেগাবাইট সিউডো-র্যান্ডমনেস পেতে পারেন, যদি আপনার সিপিইউ এসইএস-এনআই (হার্ডওয়্যার এক্সিলারেশন) সমর্থন করে। আমি ইউরেনডামের পাশাপাশি একটি আধুনিক পদ্ধতির স্যুইচিংয়ের অপেক্ষায় রয়েছি।

openssl enc -aes-256-ctr -pass pass:"$(dd if=/dev/urandom bs=128 count=1 2>/dev/null | base64)" -nosalt < /dev/zero > randomfile.bin

এই কুকুরছানাটি আমার বাক্সে 1.0 গিগাবাইট / গুলি করে (14 মেগাবাইট / s এর / দেব / ইউরানডমের তুলনায়)। এটি কেবল একটি এলোমেলো পাসওয়ার্ড তৈরি করতে ইউরেনডম ব্যবহার করে এবং তারপরে সেই কীটি ব্যবহার করে খুব দ্রুত / dev / শূন্যের এনক্রিপশন করে। এটি ক্রিপ্টোগ্রাফিকভাবে সুরক্ষিত PRNG হওয়া উচিত তবে আমি গ্যারান্টি দিচ্ছি না।


এই দুর্দান্ত উত্তরটির জন্য আপনাকে ধন্যবাদ, আমি 9.5 এমবি / সেকেন্ড / dev / ইউরানডম থেকে 120 এমবি / সেকেন্ড ওপেনসেল দিয়ে যেতে সক্ষম হয়েছি।
GDR

লিনাক্সের ইউরেনডামের খারাপ প্রয়োগ রয়েছে এমন প্রথম বিবৃতি ব্যতীত আমি এই উত্তরটি অনুমোদিত করছি। এনক্রিপশনের আগে একটি হার্ড ডিস্ক মুছতে (বা পূরণ করতে?) যথেষ্ট যথেষ্ট।
বিক্রত চৌধুরী চৌধুরী

5
pvএকটি সুন্দর অগ্রগতি সূচক জন্য পাস । openssl enc -aes-256-ctr -pass pass:"$(dd if=/dev/urandom bs=128 count=1 2>/dev/null | base64)" -nosalt < /dev/zero | pv -pterb > /dev/sdb
বিক্রত চৌধুরী চৌধুরী

@ বিক্রান্তচৌধারি ইউরেনডম উচ্চমানের সিউডো এলোমেলো সংখ্যা তৈরি করে, নিশ্চিত, তবে ধীর হওয়ার জন্য এটি কোনও অজুহাত নয়। এইএসের কাউন্টার মোডটি আরও দ্রুত এবং এটি কীভাবে / ডিভ / ইউরানডমের চেয়ে কম সুরক্ষিত হবে তা তর্ক করা শক্ত।
16:32

1
কেবলমাত্র pvসুপারিশ যুক্ত করতে , আপনি লেখার সমাপ্তির দিকে অগ্রগতি দেখানোর pv -pterb -s $(blockdev --getsize64 /dev/sdb) >/sdbজন্য পাইপ করতে পারেন pv
অ্যাসিফিল

7

টি 2500 সিপিইউ সহ একটি থিংকপ্যাড টি 60 পি-তে উবুন্টু 8.04 এর অধীনে একটি দ্রুত পরীক্ষায়, 1GB এর এলোমেলো ডেটা openssl rand3-4x এর চেয়ে দ্রুত ছিল /dev/urandom। এটাই,

time cat /dev/urandom | head -c 1000000000 > /dev/null

... প্রায় 4 মিনিটের সময় ছিল ...

time openssl rand 1000000000 | head -c 1000000000 > /dev/null

... মাত্র 1 মিনিটের বেশি ছিল।

র্যান্ডম-গুণমানের মধ্যে কোনও পার্থক্য রয়েছে কিনা তা নিশ্চিত করুন না, তবে সম্ভবত এইচডি-ওয়াইপিংয়ের পক্ষে ভাল।


5

আমি প্রচুর উত্তর দেখতে পাচ্ছি যে এলোমেলো ডেটা ব্যবহার করা গুরুত্বপূর্ণ নয়। এটি বেশ সত্য যদি আপনি যা করতে চেষ্টা করছেন তা যদি ড্রাইভটি মুছে ফেলা হয় তবে আপনি যদি ডিস্ক এনক্রিপশনের প্রস্তুতিতে এটি মুছছেন তবে এতটা বেশি নয়।

আপনি যদি অ-র্যান্ডম ডেটা দিয়ে কোনও ডিভাইস পূরণ করেন তবে এটিতে একটি এনক্রিপ্ট করা পার্টিশন রাখুন আপনি সম্ভবত কোনও সমস্যায় পড়তে পারেন। এনক্রিপ্ট করা ডেটা সংরক্ষণ করা ড্রাইভের অংশটি ড্রাইভের বাকী অংশ থেকে বেরিয়ে আসবে, কারণ এনক্রিপ্ট হওয়া ডেটা এলোমেলো দেখবে এবং বাকিগুলি তা দেখতে পাবে না। এটি ক্রাইপ্টো ডিস্ক সম্পর্কিত তথ্য নির্ধারণ করতে ব্যবহার করা যেতে পারে যা এটি ক্র্যাক করার জন্য ব্যবহৃত হতে পারে। নীচের লিঙ্কটিতে আরও কিছু সাধারণ আক্রমণগুলি কীভাবে কাজ করে এবং কীভাবে তাদের বিরুদ্ধে রক্ষা করতে পারে তার পিছনের তত্ত্বটি ব্যাখ্যা করে (লিনাক্সে, যাইহোক)।

লিনাক্স হার্ড ডিস্ক এনক্রিপশন সেটিংস


1
খুব সঠিক. তুলনামূলকভাবে আধুনিক ডিস্কের সাথে (> 20 জিবি) যে কোনও একক পাস ওভাররাইট যথেষ্ট পরিমাণে মুছবে। এমনকি এনএসএ এবং পছন্দগুলি ড্রাইভ থেকে উল্লেখযোগ্য পরিমাণে ডেটা পাওয়ার জন্য কঠোর চাপ দেওয়া হবে। এবং এটি খুব ব্যয়বহুল। প্রতি মেগাবাইটে 100.000 ডলার ভাবেন। এনক্রিপশন সম্পর্কে মন্তব্য খুব সত্য। আপনি ডিস্কের অব্যবহৃত অংশগুলি ব্যবহৃত অংশগুলির মতো "এলোমেলো" দেখতে চান।
টনি

আপনার ডিভাইস এনক্রিপশন সফ্টওয়্যার পুরো ডিস্ক এলোমেলো করে না?
নাথান গারাবেডিয়ান

5

আপনার যদি নিরাপদে কোনও এইচডি মুছতে হয় তবে একটি সরঞ্জাম খুব শক্তিশালী রয়েছে: ডিবিএন


5

আপনি যদি একটি বিশাল ব্লক ডিভাইস মুছতে চান তবে আমি এটি ব্যবহার করতে আরও শক্তিশালী ddএবং এলোমেলো ডেটা আউটপুট পুনঃনির্দেশের পরিবর্তে ডিভাইস ম্যাপার পেয়েছি । নিম্নলিখিতটি মধ্যবর্তী স্থানে রূপান্তরিতভাবে en- এবং ডিক্রিপ্ট /dev/sdbকরার মানচিত্র তৈরি করবে /dev/mapper/deviceToBeErased। এনক্রিপ্ট করা শেষে ডিভাইসটি পূরণ করতে, শূন্যগুলি ম্যাপার ( /dev/mapper/deviceToBeErased) এর সমতল পাঠ্য অংশে অনুলিপি করা হয় ।

cryptsetup --cipher aes-xts-plain64 --key-file /dev/random --keyfile-size 32 create deviceToBeErased /dev/sdb
dd if=/dev/zero of=/dev/mapper/deviceToBeErased bs=1M

/dev/sdbযদি এনইএসে কোনও গুরুতর দুর্বলতা না থাকে তবে এনক্রিপ্ট করা ডেটা এলোমেলো ডেটা থেকে পৃথক হওয়ার গ্যারান্টিযুক্ত । ব্যবহৃত চাবিটি ধরা পড়েছে /dev/random(চিন্তা করবেন না - এটি কেবল 32 বাইট ব্যবহার করে)।


4

ফ্রেমডম চেক করুন

http://billauer.co.il/frandom.html

আমার পরীক্ষা অনুযায়ী এটি দ্রুততম


1
আরসি 4 ব্যবহার করা হয়, ফ্রেণ্ডমকে আর ক্রিপ্টোগ্রাফিকভাবে নিরাপদ হিসাবে বিবেচনা করা উচিত নয়। আরসি 4 ব্যবহার করার সময় টিএলএস-এ সীমান্তিক ব্যবহারিক (!) আক্রমণের উদাহরণের জন্য দেখুন ব্লগ.ক্রিপ্টোগ্রাফিইজেনারিং.কম / ২০১৩ / ২০১৩
Perseids

2

আপনার সরঞ্জামটি যত দ্রুত ততই নিরাপদ ফলাফল হবে। ভাল এলোমেলোতা তৈরি করতে সময় লাগে।

যাইহোক, আপনি ডিডি এর মতো কিছু ব্যবহার করতে পারেন যদি = / dev / শূন্য = / দেব / এসডিবি , তবে স্পষ্টতই এটি এলোমেলো হতে চলেছে না, এটি কেবল আরও দ্রুত মুছে ফেলবে।

অন্য বিকল্পটি এই পদ্ধতিটি ব্যবহার করতে পারে / sbin / ব্যাডব্লকস -c 10240 -s -w -t এলোমেলোভাবে দ্রুত - ইউরেনডম তবে ব্যাডব্লকগুলি পিআরএনজি কম এলোমেলো।


1
এবং সত্যই - এটি ড্রাইভের সুরক্ষার জন্য অত্যন্ত স্বাচ্ছন্দ্যযুক্ত
ওয়ারেন

একাধিক ওভাররাইট, যেমন শেড, সময় নেয় এবং "নিখুঁত" র্যান্ডম ডেটার একটি ওভাররাইটের চেয়ে ভাল সুরক্ষা সরবরাহ করে।
পরবর্তী বিজ্ঞপ্তি না দেওয়া পর্যন্ত বিরতি দেওয়া হয়েছে।

"আপনার সরঞ্জামটি যত দ্রুত ততই নিরাপদ ফলাফল হবে good ভাল এলোমেলো উত্পন্ন করতে সময় লাগে" " - এটা সত্যি না. একটি এইএস কাউন্টার মোড (সিউডো) এলোমেলো সংখ্যার জেনারেটরটি আরও ভাল বিশ্লেষণ করা হয় এবং / ডিভ / ইউরেনডমের চেয়ে দ্রুতগতির অর্ডার দেয়। (ট্রনিকের উত্তর দেখুন))
পার্সেইডস

2

/dev/random প্রচুর সিস্টেম এনট্রপি ব্যবহার করে এবং তাই কেবল একটি ধীর ডেটা স্ট্রিম তৈরি করে।

/dev/urandom কম সুরক্ষিত এবং দ্রুত, তবে এটি এখনও তথ্যের ছোট অংশের দিকে তত্পর হয় - এটি উচ্চ গতির এলোমেলো সংখ্যার ধারাবাহিক স্ট্রিম সরবরাহ করার উদ্দেশ্যে নয়।

আপনার নিজের ডিজাইনের একটি PRNG তৈরি করা উচিত এবং এর থেকে /dev/randomবা এটিকে কিছু দিয়ে বীজ করা উচিত /dev/urandom। আপনার যদি আরও কিছু এলোমেলো প্রয়োজন হয় তবে পর্যায়ক্রমে এটি বীজ করুন - প্রতি কয়েক এমবি (বা আপনার প্রঙের দৈর্ঘ্য যাই হোক না কেন)। ইউরেনডম বা এলোমেলো থেকে 4 বাইট (32 বিট মান) পাওয়া যথেষ্ট দ্রুত যা আপনি এটি প্রতি 1 কে ডেটা করতে পারেন (প্রতি 1 কে আপনার প্রিংগ পুনরায় তৈরি করেছেন) এবং খুব, খুব দ্রুতগতিতে যাওয়ার সময় খুব এলোমেলো ফলাফল পেতে পারেন।

-Adam


7
এটি খুব বিরল যে কেউ ইতিমধ্যে সহজলভ্য যেগুলির চেয়ে তার নিজস্ব এলোমেলো নম্বর জেনারেটর লিখতে পারে। প্রায়শই না, ফলাফলটি অনুমানযোগ্য প্যাটার্ন এবং সুরক্ষার একটি মিথ্যা অনুভূতি। আমি ড্রাইভে তার / দেব প্রবেশ বা খুব পুঙ্খানুপুঙ্খ শারীরিক ধ্বংসের মাধ্যমে শ্যাটার ব্যবহার করার পরামর্শ দেব।
পরবর্তী বিজ্ঞপ্তি না দেওয়া পর্যন্ত বিরতি দেওয়া হয়েছে।

আমি রাজী. আমি ক্রেড ব্যবহার করব, যা ডিফল্টরূপে ইউরানডম ব্যবহার করে (যা আমি অকপটে ধীর পাই না)। একটি নোট হিসাবে, আপনি খুব ধৈর্যশীল হলে শেক্রেড (/random-উত্স = / দেব / র্যান্ডম নির্দিষ্ট করে) দিয়ে / dev / এলোমেলো ব্যবহার করা সম্ভব।
ম্যাথু ফ্ল্যাশেন

2

আপনি যদি হার্ড ড্রাইভটি দ্রুত মুছতে চান তবে এটিতে ননর্যান্ডম ডেটা লিখুন। এটি এলোমেলো ডেটা ব্যবহার করার চেয়ে কম সুরক্ষিত নয়। যে কোনও উপায়ে, কোনও কম্পিউটারে হুক করা হলে মূল ডেটাটি পড়া যায় না। হার্ড ড্রাইভের ডেটা ওভার রাইটিং: গ্রেট ওয়াইপিং বিতর্ক দেখায় যে মাইক্রোস্কোপ ব্যবহার করে মূল ডেটাটি পড়া যায় না।


2

LUKS এর সাথে ফর্ম্যাট করুন এবং এনক্রিপ্ট করা ভলিউমের উপর ডিডি করুন। তারপরে LUKS শিরোনাম মুছতে / dev / urandom ব্যবহার করুন।

আপনার যদি হার্ডওয়্যার এইএস সমর্থন করে তবে এটি খুব দ্রুত সমাধান।

সংক্ষেপে:

cryptsetup luksFormat /dev/sdX
cryptsetup luksOpen /dev/sdX cryptodev
dd if=/dev/zero bs=1M of=/dev/mapper/cryptodev
cryptsetup luksClose cryptodev
# wipe the luks header.  Yes, it uses /dev/urandom but only for 2MB of data:
dd if=/dev/urandom bs=1M count=2 of=/dev/sdX

সম্পন্ন!

আমার ব্লগ দেখুন: দ্রুত এলোমেলো বিট দিয়ে একটি ডিস্ক পূরণ করুন (/ dev / ইউরানডম ছাড়াই)


আপনি যা করতে চান তার সবই ডিভাইসটি ওভাররাইট করলে আপনি কেন LUKS নিয়ে বিরক্ত হন? সরল ডিএম-ক্রিপ্ট (ক্রিপ্টসেটআপের "প্লেইন মোড") এর জন্য ব্যবহার করা আরও সহজ।
Perseids

2

আপনি যদি হার্ডড্রাইভ মুছতে চান, ডিডি পুনরায় স্থানান্তরিত খাতগুলির বিষয়বস্তু মুছে না এবং হার্ডড্রাইভটি মারা যাচ্ছে তবে খুব ধীর গতির। পরিবর্তে আপনি মুছে ফাংশনটিতে ড্রাইভ বিল্ডটি ব্যবহার করতে পারেন যা দীর্ঘ সময়ের জন্য মানক করা হয়েছে।

এই উদাহরণস্বরূপ, আমি মাত্র 102 মিনিটের মধ্যে 500 জিবি মেকানিকাল হার্ডড্রাইভ মুছে ফেলছি। এমনকি যখন এটি পুনঃনির্ধারিত খাতগুলিতে পূর্ণ থাকে:

root@ubuntu:~# hdparm --security-set-pass Eins /dev/sdaj
security_password="Eins"

/dev/sdaj:
 Issuing SECURITY_SET_PASS command, password="Eins", user=user, mode=high
root@ubuntu:~# time hdparm --security-erase-enhanced Eins /dev/sdaj
security_password="Eins"

/dev/sdaj:
 Issuing SECURITY_ERASE command, password="Eins", user=user

real    102m22.395s
user    0m0.001s
sys     0m0.010s

root@ubuntu:~# smartctl --all /dev/sdaj | grep Reallocated
  5 Reallocated_Sector_Ct   0x0033   036   036   036    Pre-fail Always   FAILING_NOW 1327 

আপনি ata.wiki.kernel.org এ আরও বিশদ দেখতে পাবেন , তবে তাদের উদাহরণটি - সুরক্ষা-মুছা-বর্ধিত ব্যবহার করে না, যা পূর্বে পুনঃনির্দিষ্ট খাতগুলি মুছে ফেলার জন্য প্রয়োজনীয়।


1

অনুশীলনে সম্ভবত একটানা এলোমেলো স্ট্রিম থেকে পুরো ডিস্কটি বীজ করার দরকার নেই।

আপনি এলোমেলো ডেটার একটি আকারের আকারের আকার তৈরি করতে পারেন এবং তারপরে কেবল ডিস্ক জুড়েই এটি পুনরাবৃত্তি করতে পারেন।

কেবল নিশ্চিত হয়ে নিন যে আপনি যে পরিমাণ এলোমেলো ডেটা ঠিক একই বিট দিয়ে ডেটের সংযুক্তিযুক্ত ব্লকগুলিকে ওভাররাইটিং না শেষ করেন তা নিশ্চিত করার জন্য যে ডেটা অংশটি ডিস্কের সাধারণ ব্লক আকারের একাধিক নয়। Ch 1MB রেঞ্জের একটি মুখ্য সংখ্যা যা সুন্দরভাবে করা উচিত।

অতিরিক্ত সুরক্ষার জন্য, প্রতিবার একটি ভিন্ন অংশের আকার ব্যবহার করে এটি আরও কয়েকবার করুন।


1

'শ্যাডড' ইউটিলিটি সহজ এবং দ্রুত। যদি ড্রাইভের স্মার্ট বৈশিষ্ট্যগুলি শূন্য পুনরায় বরাদ্দ ক্ষেত্রগুলি নির্দেশ করে, 'শ্যাডড' সম্ভবত যথেষ্ট নিরাপদ।

তবে, ড্রাইভটিতে যদি সেক্টরগুলিকে পুনরায় বরাদ্দ দেওয়া হয় তবে ক্ষতিগ্রস্থ খাতগুলির ডেটা ওভাররাইট করা হবে না। যদি ক্ষতিগ্রস্থ অবস্থানগুলিতে পুনরায় বরাদ্দ দেওয়ার আগে সংবেদনশীল ডেটা থাকে তবে 'শ্যাড' যথেষ্ট ভাল নাও হতে পারে। 'খারাপ' সেক্টরগুলি ড্রাইভের বরাদ্দ মানচিত্রটি পুনরায় সেট করে এবং (বারবার) পড়ার মাধ্যমে পড়তে পারে।

খারাপ খাত বরাদ্দ মানচিত্র পুনরায় সেট করার ক্ষমতা নির্মাতা এবং ড্রাইভ মডেলের উপর নির্ভর করে পরিবর্তিত হয়।


0

আপনি যদি যা করতে চান তা যদি ডিস্কটি ওভাররাইট করে থাকে তবে আপনি যা ব্যবহার করেন তা বিবেচনাধীন নয় কারণ কোনও কিছুই ফরেনসিক ল্যাব থেকে কম কিছু হারাবে এবং আমি সেই উত্সের স্তরটি থামিয়ে দেওয়ার জন্য ড্রাইভকে স্ল্যাজিংয়ের কম কিছুতেই বিশ্বাস করব না would ।

সমস্ত শূন্য বা সাধারণের মতো একটি অযৌক্তিক উত্স বা পুনরাবৃত্ত প্যাটার্নের মতো (কেবল আমার মনে হয় এটি কার্যকর হবে) ব্যবহার করুন

(head -c 4096 /dev/urandom; cat /dev/sdb/) > /dev/sdb

এটি ক্ষেত্রে হতে পারে তবে কখনও কখনও আপনি পরিচালনকে বোঝাতে পারবেন না যে এলোমেলো লেখার মাধ্যমে দেওয়া সুরক্ষা তথ্য পুনরুদ্ধারের জন্য প্রয়োজনীয় প্রযুক্তির স্তর প্রদত্ত সমস্ত জিরো ব্যবহারের চেয়ে বড় কিছু নয়, উভয় পরিস্থিতির জন্য একই। এক্ষেত্রে আপনার নিজের দ্রুত এলোমেলো নম্বর জেনারেটর তৈরি করে প্রয়োজনীয়তা পূরণ করা প্রায়শই ভাল।
অ্যাডাম ডেভিস 20

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.