একটি বিদ্যমান ডিএম-ক্রিপট LUKS ডিভাইসের হ্যাশ-স্পিক এবং ইটার-টাইম কীভাবে পরিবর্তন করবেন?


11

আমি কীভাবে বিদ্যমান ডিএম-ক্রিপট LUKS ডিভাইসের হ্যাশ-স্পেক এবং ইটার-সময় পরিবর্তন করতে পারি ?

স্পষ্টতই আমি বিকল্পগুলি পাস করতে পারি যদি আমি একটি নতুন ডিভাইস তৈরি করি , উদাহরণস্বরূপ এরকম কিছু:

 sudo cryptsetup luksFormat --cipher aes-cbc-essiv:sha256 --key-size 256 --iter-time 2100 --hash sha512 /dev/loop0

তবে যদি ডিভাইসটি ইতিমধ্যে বিদ্যমান থাকে তবে আমি উদাহরণস্বরূপ ডিভাইসটিকে "ধ্বংস না করে" পুনরাবৃত্তির সময় পরিবর্তন sha256করতে sha1বা পরিবর্তন করতে পারি । (স্পষ্টতই আপনাকে আপনার পাসওয়ার্ডটি আবার টাইপ করতে হবে যেহেতু একটি নতুন হ্যাশ তৈরি হবে))


আমার প্রশ্নে আপনি কি বুঝতে পারছেন না?
ছাত্র

কেবল আমার হতে পারে তবে আমি 1 বাক্যটি জিজ্ঞাসা করা অসম্পূর্ণ বিবেচনা করি ডাব্লু / কমপক্ষে কমপক্ষে কোনও ম্যান পৃষ্ঠা বা একটি টিউটোরিয়াল বা এমন কিছু যা আপনি যা নির্দিষ্টভাবে hash-specবা iter-timeসেটিংসে আরও সুনির্দিষ্ট সেগুলি সুনির্দিষ্টভাবে অনুসরণ করার চেষ্টা করছেন re
slm

আমি অনুমান করি যে আমরা কিউ এর আগে একসাথে কাজ করেছি (এবং আপনি সাধারণত তাদের মধ্যে দুর্দান্ত বিবরণ রাখেন) এবং এটি আমাকে রক্ষা করেছিল যে এবার আপনি করেন নি।
slm

এই ক্ষেত্রে আমার কাছে আরও তথ্য নেই এবং ম্যান পেজে আমি কী চাই তা খুঁজে পাইনি ...
ছাত্র

2
এছাড়াও আছে অন্য হাতিয়ার উল্লেখ , cryptsetup-reencrypt। বুলেট তালিকাটি আপনি আমার সাথে যা করার চেষ্টা করছেন তার মতো শোনাচ্ছে: "স্বেচ্ছাসেবীর এনক্রিপশন প্যারামিটারগুলি পরিবর্তন করুন"।
slm

উত্তর:


6

প্রতিটি কী স্লটের নিজস্ব পুনরাবৃত্তির সময় থাকে। যদি আপনি পুনরাবৃত্তির সংখ্যা পরিবর্তন করতে চান তবে একই পাসফ্রেজ এবং নতুন সংখ্যার পুনরাবৃত্তির সাহায্যে একটি নতুন স্লট তৈরি করুন, তারপরে পুরানো স্লটটি সরিয়ে দিন।

cryptsetup -i 100000 --key-slot 2 luksAddKey $device
cryptsetup luksKillSlot $device 1

আমি মনে করি হ্যাশ অ্যালগরিদম প্রতি স্লট প্রতি কনফিগার করা যায় না, এটি সর্বদা বিশ্বব্যাপী-নির্বাচিত হ্যাশ ফাংশন সহ PBKDF2 থাকে।

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


9

আপনি যে সমস্ত পরিবর্তন করতে চান তা হ্যাশ হলে পুনরায় এনক্রিপ্ট করার দরকার নেই। আপনাকে এখনও একটি নতুন LUKS শিরোনাম তৈরি করতে হবে। একই সাইফার, একই মাস্টার কী, একই অফসেট, বিভিন্ন হ্যাশ।

আপনি নিজের জন্য এটি চেষ্টা করতে পারেন। প্রথমে আমরা স্ট্যান্ডার্ড সেটিংস এবং লসি আইটার গণনা সহ একটি LUKS ডিভাইস সেট আপ করি:

# truncate -s 8M /dev/shm/foobar
# cryptsetup --iter-time=42 luksFormat /dev/shm/foobar

WARNING!
========
This will overwrite data on /dev/shm/foobar irrevocably.

Are you sure? (Type uppercase yes): YES
Enter passphrase: 
Verify passphrase: 
# cryptsetup luksOpen /dev/shm/foobar foobar
Enter passphrase for /dev/shm/foobar: 
# shred -z /dev/mapper/foobar
# echo Hello World I am LUKS > /dev/mapper/foobar
# strings /dev/mapper/foobar
Hello World I am LUKS
# cryptsetup luksClose foobar

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

# cryptsetup luksDump /dev/shm/foobar
LUKS header information for /dev/shm/foobar

Version:        1
Cipher name:    aes
Cipher mode:    xts-plain64
Hash spec:      sha1
Payload offset: 4096
MK bits:        256
MK digest:      30 87 62 81 8e 8f a9 15 68 e0 82 c0 dc ee 19 54 9b f2 eb 5c 
MK salt:        c3 e0 28 53 67 10 13 d4 43 e3 7b d1 ce 62 6b e3 
                58 85 ee 67 71 76 b6 48 78 a8 34 71 58 71 21 f8 
MK iterations:  6175
UUID:           14a0a11d-0890-433e-bdcb-d2d1f5281bc2

Key Slot 0: ENABLED
    Iterations:             26033
    Salt:                   a1 7b 2b 5b 3d 8c 3c d1 3b 57 61 5a df 25 47 c8 
                            29 97 62 09 08 2b e1 b2 af 61 56 80 2f af a6 ae 
    Key material offset:    8
    AF stripes:             4000
Key Slot 1: DISABLED
Key Slot 2: DISABLED
Key Slot 3: DISABLED
Key Slot 4: DISABLED
Key Slot 5: DISABLED
Key Slot 6: DISABLED
Key Slot 7: DISABLED

আপনি দেখতে পাচ্ছেন, লসি পুনরাবৃত্তি গণনা করা হয়, স্ট্যান্ডার্ড শে 1 হ্যাশ।

এটিকে পুনরায় এনক্রিপ্ট না করে উচ্চতর পুনরাবৃত্তি গণনা এবং sha512 হ্যাশগুলিতে স্যুইচ করার জন্য আমাদের একই মাস্টার কী, একই সাইফার এবং একই পেডলোড অফসেট ব্যবহার করে একটি নতুন LUKS শিরোনাম প্রয়োজন।

মাস্টার কী প্রাপ্তি: (সতর্কতা: এই উদাহরণটি আপনার মাস্টার কীটি একটি বিশ্ব-পঠনযোগ্য ফাইলের কাছে প্রক্রিয়া তালিকায় এবং আপনার শেলের ইতিহাসে ফাঁস করে দেয় safe নিরাপদ থাকতে, এটি র‌্যামে / লাইভ সিডি / যা কিছু করুন)

# cryptsetup --dump-master-key luksDump /dev/shm/foobar

WARNING!
========
Header dump with volume key is sensitive information
which allows access to encrypted partition without passphrase.
This dump should be always stored encrypted on safe place.

Are you sure? (Type uppercase yes): YES
Enter passphrase: 
LUKS header information for /dev/shm/foobar
Cipher name:    aes
Cipher mode:    xts-plain64
Payload offset: 4096
UUID:           14a0a11d-0890-433e-bdcb-d2d1f5281bc2
MK bits:        256
MK dump:    eb aa 57 2d 42 93 fe 90 00 b9 d2 e0 e0 7b 73 26 
            4b 64 1b 8b 8e 61 75 84 1b c3 d6 f7 3f 03 d2 14 

# printf '\xeb\xaa\x57\x2d\x42\x93\xfe\x90\x00\xb9\xd2\xe0\xe0\x7b\x73\x26\x4b\x64\x1b\x8b\x8e\x61\x75\x84\x1b\xc3\xd6\xf7\x3f\x03\xd2\x14' > /dev/shm/masterkey
# hexdump -C /dev/shm/masterkey
00000000  eb aa 57 2d 42 93 fe 90  00 b9 d2 e0 e0 7b 73 26  |..W-B........{s&|
00000010  4b 64 1b 8b 8e 61 75 84  1b c3 d6 f7 3f 03 d2 14  |Kd...au.....?...|
00000020

এই কীটি ব্যবহার করে নতুন LUKS শিরোনাম তৈরি করুন: (ব্যর্থতা সম্ভব - প্রথমে আপনার পুরানো LUKS শিরোনামটির ব্যাকআপ করুন!)

# cryptsetup --master-key-file=/dev/shm/masterkey --iter-time=5000 --hash=sha512 luksFormat /dev/shm/foobar

WARNING!
========
This will overwrite data on /dev/shm/foobar irrevocably.

Are you sure? (Type uppercase yes): YES
Enter passphrase: 
Verify passphrase: 

এবং দেখতে এটির মতো দেখাচ্ছে:

# cryptsetup luksDump /dev/shm/foobar
LUKS header information for /dev/shm/foobar

Version:        1
Cipher name:    aes
Cipher mode:    xts-plain64
Hash spec:      sha512
Payload offset: 4096
MK bits:        256
MK digest:      47 ab 7b c6 41 b0 7c d8 af 3c a0 a4 23 e6 72 87 9c 0f c6 a0 
MK salt:        32 49 a5 b5 cb 4d 8a d7 25 69 72 ae e5 b2 9e 9d 
                14 09 00 1d 01 f3 c9 99 da e1 6c fc 69 78 e4 64 
MK iterations:  393750
UUID:           fd554ae8-a862-4609-8327-c6dd65ee9a83

Key Slot 0: ENABLED
    Iterations:             1578295
    Salt:                   e5 75 1c 1f 63 1d c6 0b d9 27 1a b1 27 85 b9 c1 
                            89 e8 57 95 2a c8 a0 24 9c 29 c0 f2 27 d7 2f 9a 
    Key material offset:    8
    AF stripes:             4000
Key Slot 1: DISABLED
Key Slot 2: DISABLED
Key Slot 3: DISABLED
Key Slot 4: DISABLED
Key Slot 5: DISABLED
Key Slot 6: DISABLED
Key Slot 7: DISABLED

এখন আমাদের এটা আছে। একই সাইফার, অফসেট [যদি তারা পৃথক হয় তবে আপনার অবশ্যই সেগুলি অবশ্যই লুক্স ফর্ম্যাটের সাথে নির্দিষ্ট করতে হবে], নতুন হ্যাশ এবং যথাযথ সংখ্যার পুনরাবৃত্তি।

কিন্তু বিষয়বস্তু এখনও আছে?

# cryptsetup luksOpen /dev/shm/foobar foobar
Enter passphrase for /dev/shm/foobar: 
# strings /dev/mapper/foobar
Hello World I am LUKS

এই নাও.


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