প্রমাণীকরণের জন্য বিকল্প টাইমস্ট্যাম্পিং পরিষেবা


115

আমরা আমাদের সমস্ত উত্পাদন বিল্ডগুলির জন্য কোড সাইনিং এবং টাইমস্ট্যাম্পিং সম্পাদন করি। মাঝেমধ্যে (সাধারণত যখন আমরা আরটিএম (!)) ভেরিজাইন (" http://timestamp.verisign.com/scriptts/timstamp.dll ") এর টাইমস্ট্যাম্প সার্ভারের মাঝে মাঝে অফলাইনে যাওয়ার সিদ্ধান্ত নিয়েছি।

এই ক্ষেত্রে আমাদের কী করা উচিত?

  • টাইমস্ট্যাম্প সার্ভারটি কি আপনার মূল শংসাপত্র কর্তৃপক্ষ দ্বারা হোস্ট করা উচিত?
  • অন্য কোনও নেটওয়ার্ক-হোস্ট করা টাইমস্ট্যাম্প সার্ভারগুলি যদি তাদের সার্ভারটি বন্ধ থাকে তবে আমরা ভেরিজিনের পরিবর্তে ব্যবহার করতে পারি? অন্যান্য অত্যন্ত উপলব্ধ এবং নিখরচায় বিকল্পের জন্য পরামর্শগুলি স্বাগত :)

উত্তর:


91

আমি নিম্নলিখিত ব্যাচ ফাইলটি ব্যবহার করি যা সর্বোচ্চ 300 বার লুপ করে। দুটি আর্গুমেন্ট রয়েছে,% 1 হল ব্যাচ ফাইল, পিএফএক্স ফাইল এবং সিগনটুল.এক্সে যুক্ত ফোল্ডারের পথ। % 2 হ'ল ফাইলটি স্বাক্ষরিত হওয়ার পুরো পথ। আপনি আপনার ভিজ্যুয়াল স্টুডিও পোস্ট বিল্ড ইভেন্টে কল করতে পারেন এমন কল দিয়ে যেমন "" S (সমাধানডির) তৃতীয় পক্ষ \ স্বাক্ষর \ sign.bat "" $ (সমাধানডির) তৃতীয় পক্ষ \ স্বাক্ষর "" $ (টার্গেটপথ) "আমি এই ব্যাচের ফাইলটি এখানে পরিবর্তন করেছি প্রতিটি পুনরাবৃত্তিতে বিভিন্ন টাইমস্ট্যাম্প সার্ভার ব্যবহার করুন। বর্তমানে এটি কোমোডো, ভেরিসাইন, গ্লোবাল সাইন এবং স্টারফিল্ড ব্যবহার করে। আশা করি এটিই চূড়ান্ত স্বাক্ষরকারী স্ক্রিপ্ট;)

@echo off    

REM create an array of timestamp servers...
set SERVERLIST=(http://timestamp.comodoca.com/authenticode http://timestamp.verisign.com/scripts/timestamp.dll http://timestamp.globalsign.com/scripts/timestamp.dll http://tsa.starfieldtech.com)

REM sign the file...
%1\signtool.exe sign /f %1\comodo.pfx /p videodigital %2

set timestampErrors=0

for /L %%a in (1,1,300) do (

    for %%s in %SERVERLIST% do (

        REM try to timestamp the file. This operation is unreliable and may need to be repeated...
        %1\signtool.exe timestamp /t %%s %2

        REM check the return value of the timestamping operation and retry a max of ten times...
        if ERRORLEVEL 0 if not ERRORLEVEL 1 GOTO succeeded

        echo Signing failed. Probably cannot find the timestamp server at %%s
        set /a timestampErrors+=1
    )

    REM wait 2 seconds...
    choice /N /T:2 /D:Y >NUL
)

REM return an error code...
echo sign.bat exit code is 1. There were %timestampErrors% timestamping errors.
exit /b 1

:succeeded
REM return a successful code...
echo sign.bat exit code is 0. There were %timestampErrors% timestamping errors.
exit /b 0

আমি বিশ্বস্ত সাইটগুলিতে http://timestamp.comodoca.comও রেখেছি (ধন্যবাদ ভিন্স)। আমি মনে করি এটি একটি গুরুত্বপূর্ণ পদক্ষেপ হতে পারে। আমি পিসিতেও রুট সার্টিফিকেট আপডেট করেছি।


3
আমি শুধু এখানে চিপিং করছি। আমি জানি এটি একটি পুরানো উত্তর। তবে এই স্ক্রিপ্টটি "প্রায়" নিখুঁত এবং তাই আমি আমার পরিবর্তনে কেবল চিপ করতে চাই। স্ক্রিপ্টটি পোস্ট-বিল্ড ইভেন্ট হিসাবে চালানো হয়। যদি কোনও টাইমস্ট্যাম্প ব্যর্থ হয় তবে নিম্নলিখিত টাইমস্ট্যাম্পটি সফল হয় তবে বিল্ডটি এখনও ব্যর্থ হয় কারণ এমএসবাইল্ড সিগনটুল.এক্সির ঘটনাগুলিতে গুপ্তচরবৃত্তি করে এবং একটি ব্যর্থতা দেখে, সুতরাং এটি ব্যর্থতা মনে করে। আমি VS2012 এর মধ্যে এবং একটি বিল্ড মেশিন থেকে এটি ঘটেছে। আমার ফিক্সটি এটি অ্যাএমস্ট্রাক্ট করার জন্য টাইমস্ট্যাম্পটিকে অন্য একটি সেন্টিমিডিতে পরিবর্তন করতে হবে সুতরাং এমএসবাইল ক্যান্ট স্পাই যেমন: শুরু করুন / অপেক্ষা করুন "সাইন টুল" / ডি "% 1" "সিগনটুল.এক্সে" টাইমস্ট্যাম্প / টি %% s% 2
স্কিন্টিংকেল

1
আমি "দশমিক দশমিক ..." অংশটি বুঝতে পারি না । %%aপরিবর্তনশীল আর কখনও ব্যবহৃত হয়। লুপের জন্য বা মন্তব্যে কোনও টাইপো আছে?
l33t

1
ফ্লাডববের চমৎকার উত্তরের জন্য অতিরিক্ত নোট। আপনি যদি ভিজ্যুয়াল স্টুডিওতে পোস্ট-বিল্ড পদক্ষেপে এটি ব্যবহার করতে চলেছেন তবে আপনার "কল" বিবৃতিটি ব্যবহার করতে হবে। এই পোস্টটি দেখুন: ভিজ্যুয়াল স্টুডিও একাধিক পোস্ট বিল্ড কমান্ডগুলি
গ্যাজেটএনসি

1
Sha256 এর জন্য আপনাকে এখন / ট্র " sha256timestamp.ws.symantec.com/sha256/timestamp " ব্যবহার করতে হবে যা এখন বেশ দ্রুততর
ভিনস

1
সবার জন্য ভাবছি। হ্যাঁ এর পরে মানটি /p* .pfx পাসওয়ার্ড।
জেনসজি

16

আমি নিশ্চিত নই যে টাইমস্ট্যাম্প সার্ভারটি মূল সিএর মালিকানাধীন হবে কিনা।

আমরা http://timestamp.comodoca.com/authenticode ব্যবহার করি (এবং একটি কমোডো প্রমাণীকরণ শংসাপত্র রয়েছে) তবে বাস্তবে একটি অনুরূপ সমস্যা রয়েছে যার মধ্যে তাদের সার্ভারটি মাঝে মধ্যে একটি ত্রুটি বা সময় দেয় বলে মনে হয়। আমরা কেবলমাত্র রিলিজ বিল্ডস (ডিবাগ বিল্ডের জন্য নয়) এর জন্য অবিচ্ছিন্ন ইন্টিগ্রেশন সার্ভারে একটি নাইটলি (বা অন-ডিমান্ড) বিল্ডের অংশ হিসাবে সাইন ইন করি।

আমি এটি প্রায় (বেশিরভাগ ক্ষেত্রে) দুটি উপায়ে পেয়েছি:

  • যদি signtool.exe এ কল ব্যর্থ হয়, তবে এটি আবার (তাত্ক্ষণিকভাবে) আরও দু'বার চেষ্টা করে
  • বিল্ড স্ক্রিপ্টটি প্রতিটি পদক্ষেপে এক ধাপে সাইন ইন করত (এবং আমাদের পণ্যের অংশ হিসাবে আমাদের বেশ কয়েকটি রয়েছে), এবং এখন এটি একের পর এক করে - কিছুটা সময় নেয় তবে ব্যর্থ হওয়ার সম্ভাবনা কম less

এর মধ্যে, টাইমস্ট্যাম্প সার্ভার সমস্যার কারণে বিল্ড ব্যর্থতা সপ্তাহে একবার বা দু'বার থেকে কার্যত কখনই যায় নি।

সম্পাদনা: আমার একটি এমএসবিল্ড টাস্ক রয়েছে যা https://gist.github.com/gregmac/4cfacea5aaf702365724 এ (সেইসাথে সংগ্রহস্থলের বাইরে সংরক্ষণ করা শংসাপত্রের পাসওয়ার্ড পড়ার জন্য ) এটি করে


12

এটি এর মধ্যে একটির দ্বারা ভেরিজাইন টাইমস্ট্যাম্প ইউআরএল প্রতিস্থাপন করে দুর্দান্ত কাজ করে:

http://timestamp.comodoca.com/authenticode
http://www.trustcenter.de/codesigning/timestamp


2
এটি দেখে মনে হচ্ছে টাইমস্ট্যাম্পিংটি আর ট্রেনসেন্টার.ডি থেকে পাওয়া যায় না: "টিসি ট্রাস্টসেন্টার জিএমবিএইচ সরবরাহিত সমস্ত পণ্য ও পরিষেবাদি সিম্যানটেক আর উপলভ্য নয় to এর সাথে সম্পর্কিত যে কোনও প্রশ্নই নির্দেশিত হওয়া উচিত: সিম্যানটেক টিসি ট্রাস্টসেন্টার 24/7 ফোন সমর্থন ফোন: +১ -800-579-2848 বা + 1-520-477-3104 "
Valdimar

8

ভেরি সিগন টাইমস্ট্যাম্পিং পরিষেবাটি নিখরচায়। সম্ভবত এটির কারণেই এটির নির্ভরযোগ্যতা পর্যাপ্ত চেয়ে কম; তারা এটিকে কোনও রক্ষণাবেক্ষণ বাজেট দেয় না!

অবশ্যই এটি একটি বড় সমস্যা। কোড টাইমস্ট্যাম্পিং ব্যর্থতা থেকে ব্যর্থ সময় কারণে নষ্ট সময় সফ্টওয়্যার বিকাশ শিল্প জুড়ে একটি ক্রমবর্ধমান সমস্যা। অবশ্যই, আপনি কোনও কার্যকর সময় স্ট্যাম্পিং সার্ভার খুঁজে না পাওয়া পর্যন্ত একটি জটিল স্ক্রিপ্ট লিখতে পারেন .. তবে, সত্যিই?

আমাদের আরও ভাল দাবি করা উচিত। আমরা এই শংসাপত্রগুলির জন্য প্রচুর অর্থ প্রদান করি।

নোট করুন যে পরে আমি বিকল্প টাইম-স্ট্যাম্প সার্ভারগুলি পেয়েছি যা শুনেছেন যে ভেরিসাইন এবং কমোডো ডাউন (সাধারণত ওয়ার্কের দিনগুলি সময়কালের সময় ঘটে থাকে) পিরিয়ডে ব্যবহার করা ভাল ছিল few


7

যে কোনও টাইমস্ট্যাম্প সার্ভার ব্যবহার করা যেতে পারে: আমি সম্প্রতি গ্লোবাল সিগনের সার্ভারটি অবিশ্বাস্য বলে জানতে পেরে আমি আমার ইস্যুকারীর টাইমস্ট্যাম্প সার্ভারটি থেকে ভেরিজিনে স্যুইচ করেছি। তদ্ব্যতীত, Thawte তাদের নিজস্ব টাইমস্ট্যাম্প সার্ভার চালায় না তবে লোকেদের ভেরিসাইন ব্যবহার করার পরামর্শ দেয়


1
ঠিক আছে, Thawte ভেরিসাইন, তাই।
স্ট্যাক এক্সচেঞ্জ ব্যবহারকারী

4

আপনি সাধারণত যে কোনও সময় পছন্দসই স্ট্যাম্পিং পরিষেবা ব্যবহার করতে পারেন। যদিও বেশিরভাগ সিএই একটি সময় স্ট্যাম্পিং পরিষেবা সরবরাহ করবে। উদাহরণ

http://timestamp.globalsign.com/scripts/timstamp.dll
http://timestamp.comodoca.com/authenticode
http://www.startssl.com/timestamp
http://timestamp.digicert.com?alg=sha1
http://timestamp.digicert.com?alg=sha256

টাইমস্ট্যাম্প.ভারিসাইন ডটকমটি নীচের প্রশ্নে আমার উত্তর সম্পর্কে আরও তথ্যের জন্য 2019 এর ব্যাকএন্ডে আনুষ্ঠানিকভাবে ইওএল হয়েছিল।

HTTP-টাইমস্ট্যাম্প-verisign-কম-স্ক্রিপ্ট-timstamp-Dll নয়-উপলব্ধ


ডিজিগের্ট আলগ স্পেসিফিকেশন খুঁজছেন! এই নথি কোথায়?
ইয়ানো

1
knowledge.digicert.com/alerts/... আশা করি এই সাহায্য করে
RickWeb

3

আমারও একই সমস্যা ছিল। আমি স্বাক্ষর করার চেষ্টা করেছি এমন কয়েকটি ফাইলের জন্য ভেরিজাইন সার্ভারটি পৌঁছানো যায়নি (তবে একই বিল্ডের অন্যান্য ফাইলগুলি সঠিকভাবে স্বাক্ষরিত হয়েছিল)।

আমি সাধারণত আবার চেষ্টা করি এবং এটি কাজ করে তবে আজ, কোনও উপায় নেই।

তাই ইন্টারনেটে কিছু অপ্রয়োজনীয় গবেষণার পরে আমি বিশ্বস্ত অঞ্চল সাইটগুলিতে http: //*.verisign.com রাখার চেষ্টা করেছি এবং এটি কাজ করে ... অবশেষে আমি জানি না যে সার্ভারে কোনও সমস্যা আছে এবং এখন এটি কাজ করে বা আমি যদি তা করেছি সঠিক জিনিস, আমি মনে করি পরের দিনগুলিতে দেখতে পাবেন। আশা করি এটি অবরুদ্ধ অন্যদের সহায়তা করতে পারে।

সার্ভার কনফিগারেশন: উইন্ডোজ সার্ভার 2003 এসপি 2, আইই 8, বর্ধিত সুরক্ষা চালু রয়েছে।


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

1

আপনি নিজের বিল্ডগুলিতে সাইন ইন ও টাইমস্ট্যাম্প করার জন্য সিগনটলের পরিবর্তে জসাইন ব্যবহার করতে পারেন , এটি বিকল্প টাইমস্ট্যাম্পিং পরিষেবাদিতে ব্যর্থতা সমর্থন করে।

কমান্ড লাইন সিনট্যাক্সটি দেখতে এরকম দেখাচ্ছে:

jsign --keystore keystore.p12 --alias test --storepass password \
      --tsaurl http://timestamp.comodoca.com/authenticode,http://timestamp.globalsign.com/scripts/timestamp.dll \
      application.exe

আপনি চেষ্টা সংখ্যা (সহ --tsretries) এবং প্রচেষ্টা (এর সাথে --tsretrywait) মধ্যে বিলম্বও কনফিগার করতে পারেন ।


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