الحصول على ملف التجزئة باستخدام ويندوز PowerShell

يمكن أن يكون الحصول على تجزئة الملفات مفيدًا جدًا. يمكن استخدام هذا على سبيل المثال للتأكد من أن الملفات التي تم نسخها احتياطيًا غير تالفة أو معدلة (عن طريق إنشاء تجزئة قبل العملية وبعدها) ، أو للتأكد من عدم العبث بملف مهم.

قد تراه أيضًا على مواقع التنزيل ، لكن الاستخدام هناك محدود. السبب بسيط: إذا نجح أحد المهاجمين في تغيير ملف التنزيل ، فهناك احتمال أن موقع الويب قد تعرض للاختراق أيضًا. قد يعني هذا من الناحية النظرية على الأقل أنه تم تعديل تجزئة الملف المعروض على الموقع لتناسب الإصدار الضار الجديد من التنزيل.

لقد قمنا بمراجعة عدد كبير من البرامج ذات الصلة بالتجزئة في الماضي: من ملحق Windows shell HashTab ، عبر HashMyFiles من Nirsoft إلى File Check MD5 و MD5 Check Utility.

الحصول على ملف التجزئة باستخدام ويندوز PowerShell

إذا كنت بحاجة إلى إنشاء تجزئة ملف بسرعة على جهاز يعمل بنظام Windows ، فيمكنك أيضًا استخدام PowerShell لذلك.

قد لا تكون مريحة مثل بعض برامج التجزئة الموجودة هناك ، لكنها تطبيق أصلي لا يتطلب تشغيل برامج تابعة لجهات أخرى. مفيد في البيئات المحظورة على سبيل المثال ، أو عندما لا يتوفر اتصال إنترنت لتنزيل هذه البرامج.

تم دمج تجزئة توليد في PowerShell 4.0. يتم تضمينه في Windows 8.1 و Windows Server 2012 R2 ، ومتاح أيضًا لنظام التشغيل Windows 7 المزود بحزمة الخدمة Service Pack 1 و Windows Server 2012 و Windows Server 2008 R2 المزود بحزمة الخدمة Service Pack 1.

  1. اضغط على مفتاح Windows ، اكتب PowerShell ، واضغط على المفتاح Enter لبدء التشغيل.

الأمر الرئيسي هو get-filehash FILEPATH ، على سبيل المثال get-filehash c: \ test.txt .

يستخدم Get-FileHash خوارزمية Sha256 افتراضيًا. يمكنك تحديد خوارزمية مختلفة بدلاً من ذلك باستخدام المعلمة -Algorithm.

المدعومة هي: SHA1 ، SHA256 ، SHA384 ، SHA512 ، MACTripleDES ، MD5 ، RIPEMD160

لاحظ أن MD5 و SHA1 لم تعد آمنة بعد الآن ولكن لا تزال معتمدة.

لذلك ، لإنشاء تجزئة Sha512 ، يمكنك استخدام الأمر get-filehash - الجوارزمية Sha512 c: \ test.txt.

يمكنك أيضًا استخدام -LiteralPath أو -InputStream بدلاً من خيار المسار الافتراضي.

  • LiteralPath: get-filehash -LiteralPath -Algorithm SHA512 c: \ test.txt.
  • InputStream get-filehash -InputStream -Algorithm SHA512 Stream.

الفرق الأساسي بين المسار و literalpath هو أن literalpath لا تدعم أي أحرف البدل ، ويتم استخدامها تمامًا كما تكتب.

CertUtil

CertUtil هو برنامج Windows أصلي آخر قد تستخدمه لحساب تجزئة الملفات. يمكنك تشغيل البرنامج من موجه الأوامر ، أو باستخدام PowerShell.

الأمر الأساسي هو certutil -hashfile PATH ، على سبيل المثال certutil -hashfile c: \ example.txt .

يمكنك تحديد خوارزمية التجزئة كذلك. المدعومة هي MD2 ، MD4 ، MD5 ، SHA1 ، SHA256 ، SHA384 ، SHA512. الخوارزمية الافتراضية هي MD5.

لاستخدام خوارزمية تجزئة مختلفة ، حددها بعد الأمر ، على سبيل المثال certutil -hashfile c: \ example.txt SHA512 .

الكلمات الختامية

يمكنك استخدام الأوامر في البرامج النصية لحساب التجزئة لعدة ملفات في عملية واحدة. إن عمليتي الحصول على filehash و certutil هما عمليتان مفيدتان تمامًا لإجراء عمليات حسابية سريعة للتجزئة على نظام Windows ، وكذلك لاستخدام البرنامج النصي. (عبر Genbeta (الإسبانية))