ძნელია PIN-ის გამოცნობა

Მეგობრები! ვინაიდან მე უკვე მაქვს ეს მკვდარი რვეული, ვიყენებ მას და გკითხავ პრობლემას, რომელსაც გუშინ ებრძოდა სამი ფიზიკოსი, ორი ეკონომისტი, ერთი პოლიტექნიკურიდან და ერთი ჰუმანიტარული. მთელი ტვინი გავტეხეთ და მუდმივად სხვადასხვა შედეგს ვიღებთ. შესაძლოა თქვენ შორის არიან პროგრამისტები და მათემატიკური გენიოსები, თანაც, პრობლემა ზოგადად სასკოლოა და ძალიან მარტივი, უბრალოდ ფორმულა არ გვაქვს. იმიტომ, რომ ზუსტ მეცნიერებებს თავი დავანებეთ და ამის ნაცვლად, რატომღაც, ვწერთ წიგნებს და ვხატავთ ნახატებს. Ბოდიში.

ასე რომ, backstory.

მომცეს ახალი საბანკო ბარათი და, როგორც ყოველთვის, უპრობლემოდ გამოვიცანი მისი პინ კოდი. მაგრამ არა ზედიზედ. ვთქვათ, პინ კოდი იყო 8794 და დავრეკე 9748. ანუ ტრიუმფალურად გამოიცნო ყველა ნომერიშეიცავს მოცემულ ოთხნიშნა რიცხვს. Კარგი, დიახ, არა მხოლოდ რიცხვი, მაგრამ უბრალოდ მისი კომპონენტები ზეგაოცდა. მაგრამ ყველა რიცხვი მართალია! შენიშვნა - მე ვიმოქმედე შემთხვევით, ანუ არ მომიწია უკვე ცნობილი ნომრების სწორი თანმიმდევრობით დაყენება, უბრალოდ სულით ვიმოქმედე: აქ არის ჩემთვის უცნობი ოთხი ნომერი და მჯერა, რომ მათ შორის შეიძლება იყოს 9, 7, 4 და 8, და მათი თანმიმდევრობა არ არის მნიშვნელოვანი.მაშინვე ვკითხეთ საკუთარ თავს რამდენი ვარიანტი მქონდა(ალბათ გასაგებად რა მაგარია რომ ავიღე და გამოვიცანი). ანუ ოთხი რიცხვის რამდენი კომბინაციიდან უნდა ამერჩია? შემდეგ კი, რა თქმა უნდა, დაიწყო ჯოჯოხეთი. ჩვენი თავები მთელი საღამო ფეთქავდა და ყველამ, შედეგად, სრულიად განსხვავებული პასუხებით გამოვიდა! მე კი დავიწყე ყველა ამ კომბინაციის ზედიზედ ჩაწერა რვეულში, როგორც კი გაიზარდა, მაგრამ ოთხასზე მივხვდი, რომ ოთხასზე მეტი იყო (ყოველ შემთხვევაში, ამან უარყო ფიზიკოს თრეშის პასუხი, რომელიც დაარწმუნა მე რომ ოთხასი კომბინაცია იყო, მაგრამ მაინც არ არის ნათლად) - და თავი დავანებე.

რეალურად, კითხვის არსი.რა არის ოთხნიშნა რიცხვში შემავალი ოთხი რიცხვის გამოცნობის (ნებისმიერი თანმიმდევრობით) ალბათობა?

თუ არა, გადავაფორმოთ (მე ჰუმანისტი ვარ, უკაცრავად, თუმცა მათემატიკაში ყოველთვის დიდი სისუსტე მქონდა) რომ უფრო და უფრო გასაგები გახდეს. Როგორ არ განმეორდებარიცხვების კომბინაციები, რომლებიც შეიცავს რიგითი რიცხვების სერიას 0-დან 9999-მდე? ( გთხოვთ, არ აურიოთ ეს კითხვაში "რამდენი კომბინაცია არ განმეორდებანომრები"!!! ნომრები შეიძლება განმეორდეს! ვგულისხმობ, 2233 და 3322 ერთი და იგივე კომბინაციაა ამ შემთხვევაში!!).

ან უფრო კონკრეტულად. ოთხჯერ უნდა გამოვიცნო ათიდან ერთი რიცხვი. მაგრამ არა ზედიზედ.

ისე, ან სხვა რამე. ზოგადად, თქვენ უნდა გაარკვიოთ, რამდენი ვარიანტი მქონდა რიცხვითი კომბინაციისთვის, რამაც ჩამოაყალიბა ბარათის პინ კოდი. დაეხმარეთ, კეთილო ხალხო! უბრალოდ გთხოვთ, დაეხმარეთ, დაუყოვნებლივ არ დაიწყოთ წერა, რომ არსებობს 9999 ვარიანტი(გუშინ ეს ყველას თავში მოვიდა) რადგან ეს სისულელეა - ბოლოს და ბოლოს, იმ პერსპექტივაში, რომელიც გვაწუხებს, არის რიცხვი 1234, რიცხვი 3421, რიცხვი 4312 და ა.შ. ერთი და იგივე! დიახ, დიახ, ნომრები შეიძლება განმეორდეს, რადგან არის პინ კოდი 1111 ან იქ, მაგალითად, 0007. თქვენ შეგიძლიათ წარმოიდგინოთ მანქანის ნომერი პინ კოდის ნაცვლად. დავუშვათ, რა არის ალბათობა იმისა, რომ გამოიცნოთ ყველა ერთი ციფრი, რომლებიც ქმნიან მანქანის ნომერს? ან, ალბათობის თეორიის საერთოდ აღმოსაფხვრელად - რამდენი რიცხვითი კომბინაციიდან უნდა აერჩია ერთი?

გთხოვთ, დაამყაროთ თქვენი პასუხები და მსჯელობა რამდენიმე ზუსტი ფორმულებით, რადგან გუშინ ჩვენ თითქმის გონება დავკარგეთ. წინასწარ დიდი მადლობა ყველას!

P.S. ერთმა ჭკვიანმა ადამიანმა, პროგრამისტმა, მხატვარმა და გამომგონებელმა, უბრალოდ ძალიან სწორად შესთავაზა სწორი გამოსავალიპრობლემები, მაძლევს რამდენიმე წუთს კარგ განწყობას: " პრობლემის გადაწყვეტა ასეთია: მას აქვს ობსესიურ-კომპულსიური აშლილობა, მკურნალობა ასეთია: გათხოვება და პომიდორი. მე რომ მის ადგილას ვიყო, მე უფრო მაწუხებს არა კითხვა "რა არის ალბათობა", არამედ კითხვა "ვაქცევ ყურადღებას ვაქცევ ყველა ამ ციფრს"?ზოგადად დასამატებელი არაფერია :)

ქვემოთ მოყვანილი კალკულატორი შექმნილია n-ით m ელემენტების ყველა კომბინაციის შესაქმნელად.
ასეთი კომბინაციების რაოდენობა შეიძლება გამოითვალოს ელემენტების კომბინატორიკის კალკულატორის გამოყენებით. პერმუტაციები, განლაგება, კომბინაციები.

გენერირების ალგორითმის აღწერა კალკულატორის ქვეშ.

ალგორითმი

კომბინაციები წარმოიქმნება ლექსიკოგრაფიული თანმიმდევრობით. ალგორითმი მუშაობს კომპლექტის ელემენტების რიგითი ინდექსებით.
განვიხილოთ ალგორითმი მაგალითით.
პრეზენტაციის გასაადვილებლად განიხილეთ ხუთი ელემენტისგან შემდგარი ნაკრები, რომელთა ინდექსები იწყება 1-ით, კერძოდ, 1 2 3 4 5.
საჭიროა m = 3 ზომის ყველა კომბინაციის გენერირება.
პირველი კომბინაცია ინიციალიზებულია პირველი მოცემული ზომა m - ინდექსები ზრდადი მიმდევრობით
1 2 3
შემდეგ მოწმდება ბოლო ელემენტი, ანუ i = 3. თუ მისი მნიშვნელობა ნაკლებია n - m + i-ზე, მაშინ ის იზრდება 1-ით.
1 2 4
ბოლო ელემენტი კვლავ მოწმდება და კვლავ იზრდება.
1 2 5
ახლა ელემენტის მნიშვნელობა უდრის მაქსიმალურ შესაძლოს: n - m + i = 5 - 3 + 3 = 5, შემოწმებულია წინა ელემენტი i = 2-ით.
თუ მისი მნიშვნელობა ნაკლებია n - m + i-ზე, მაშინ ის იზრდება 1-ით, ხოლო მის შემდეგ ყველა ელემენტისთვის, მნიშვნელობა უდრის წინა ელემენტის მნიშვნელობას პლუს 1.
1 (2+1)3 (3+1)4 = 1 3 4
შემდეგ კვლავ ვამოწმებთ i = 3.
1 3 5
შემდეგ - შეამოწმეთ i = 2.
1 4 5
შემდეგ მოდის ბრუნი i = 1.
(1+1)2 (2+1)3 (3+1)4 = 2 3 4
და შემდგომ,
2 3 5
2 4 5
3 4 5 - ბოლო კომბინაცია, რადგან მისი ყველა ელემენტი ტოლია n - m + i.

მიუხედავად PIN-ების მნიშვნელოვანი როლისა მსოფლიო ინფრასტრუქტურაში, ჯერ არ ჩატარებულა აკადემიური კვლევა იმის შესახებ, თუ როგორ ირჩევენ ადამიანები რეალურად PIN-ებს.

კემბრიჯის უნივერსიტეტის მკვლევარებმა სორენ პრეიბუშმა და როს ანდერსონმა გამოასწორეს სიტუაცია მსოფლიოში პირველი რაოდენობრივი ანალიზის გამოქვეყნებით 4-ნიშნა ბანკის PIN-ის გამოცნობის სირთულის შესახებ.

არასაბანკო წყაროებიდან და ონლაინ გამოკითხვებიდან პაროლის გაჟონვის შესახებ მონაცემების გამოყენებით, მკვლევარებმა დაადგინეს, რომ მომხმარებლები PIN კოდების არჩევანს ბევრად უფრო სერიოზულად უყურებენ, ვიდრე ვებსაიტების პაროლების არჩევას: კოდების უმეტესობა შეიცავს თითქმის შემთხვევით რიცხვებს. მიუხედავად ამისა, საწყის მონაცემებს შორის არის როგორც მარტივი კომბინაციები, ასევე დაბადების დღეები - ანუ, გარკვეული იღბლით, თავდამსხმელს შეუძლია უბრალოდ გამოიცნოს სასურველი კოდი.

კვლევის საწყისი წერტილი იყო RockYou მონაცემთა ბაზიდან 4-ციფრიანი პაროლის თანმიმდევრობის ნაკრები (1,7 მილიონი) და 200 ათასი PIN კოდის მონაცემთა ბაზა დაბლოკვის პროგრამისგან. iPhone ეკრანი(ბაზა უზრუნველყო აპლიკაციის შემქმნელმა დანიელ ამიტაიმ). ამ მონაცემებზე აგებულ გრაფიკებში ჩნდება საინტერესო შაბლონები - თარიღები, წლები, განმეორებითი რიცხვები და 69-ით დამთავრებული PIN კოდებიც კი. ამ დაკვირვებებზე დაყრდნობით მეცნიერებმა ააგეს ხაზოვანი რეგრესიის მოდელი, რომელიც აფასებს თითოეული PIN-ის პოპულარობას 25 ფაქტორზე დაყრდნობით, მაგალითად არის თუ არა კოდი DDMM თარიღი, არის თუ არა ის აღმავალი მიმდევრობა და ა.შ. ამ ზოგად პირობებს აკმაყოფილებს PIN კოდების 79% და 93% თითოეულ კომპლექტში.


ასე რომ, მომხმარებლები ირჩევენ 4-ციფრიან კოდებს მხოლოდ რამდენიმე მარტივი ფაქტორის საფუძველზე. თუ ბანკის PIN კოდები აირჩიეს ამ გზით, მათი 8-9%-ის გამოცნობა მხოლოდ სამი მცდელობით შეიძლებოდა! მაგრამ, რა თქმა უნდა, ხალხი ბევრად უფრო ყურადღებიანია ბანკის კოდების მიმართ. რეალური საბანკო მონაცემების დიდი ნაკრების არარსებობის გამო, მკვლევარებმა გამოკითხეს 1300-ზე მეტი ადამიანი, რათა შეეფასებინათ რამდენად განსხვავდება რეალური PIN კოდები უკვე განხილულისგან. კვლევის სპეციფიკიდან გამომდინარე, რესპონდენტებს ეკითხებოდნენ არა თავად კოდების შესახებ, არამედ მხოლოდ ზემოთ ჩამოთვლილ ფაქტორებთან (მატება, DDMM ფორმატი და ა.შ.) შესაბამისობაზე.

გაირკვა, რომ ხალხი ნამდვილად უფრო ფრთხილად ირჩევს ბანკის PIN კოდების არჩევას. გამოკითხულთა დაახლოებით მეოთხედი იყენებს ბანკის მიერ გენერირებულ შემთხვევით PIN-ს. მესამედზე მეტი ირჩევს PIN-ის გამოყენებით ძველი ნომერიტელეფონის ნომერი, სტუდენტის ID ნომერი ან ნომრების სხვა ნაკრები, რომელიც შემთხვევით გამოიყურება. შედეგების მიხედვით, ბარათის მფლობელთა 64% იყენებს ფსევდო შემთხვევით PIN კოდს, რაც არასაბანკო კოდების წინა ექსპერიმენტებში 23-27%-ზე ბევრად მეტია. კიდევ 5% იყენებს რიცხვის შაბლონს (მაგ. 4545) და 9% უპირატესობას ანიჭებს კლავიატურის შაბლონს (მაგ. 2684). ზოგადად, თავდამსხმელს ექვსი მცდელობით (სამი ბანკომატით და სამი გადახდის ტერმინალით) აქვს სხვისი ბარათის PIN-ის გამოცნობის 2%-ზე ნაკლები შანსი.

ფაქტორი მაგალითი როკ შენ iPhone გამოკითხვა
თარიღები
DDMM 2311 5.26 1.38 3.07
DMYY 3876 9.26 6.46 5.54
MMDD 1123 10.00 9.35 3.66
mmyy 0683 0.67 0.20 0.94
YYYY 1984 33.39 7.12 4.95
სულ 58.57 24.51 22.76
კლავიატურის ნიმუში
დაკავშირებული 6351 1.52 4.99
კვადრატი 1425 0.01 0.58
კუთხეები 9713 0.19 1.06
ჯვარი 8246 0.17 0.88
დიაგონალური ხაზი 1590 0.10 1.36
ჰორიზონტალური ხაზი 5987 0.34 1.42
სიტყვა 5683 0.70 8.39
ვერტიკალური ხაზი 8520 0.06 4.28
სულ 3.09 22.97 8.96
ციფრული ნიმუში
მთავრდება 69-ით 6869 0.35 0.57
მხოლოდ 0-3 რიცხვები 2000 3.49 2.72
მხოლოდ 0-6 რიცხვები 5155 4.66 5.96
განმეორებადი წყვილები 2525 2.31 4.11
იგივე ციფრები 6666 0.40 6.67
დაღმავალი თანმიმდევრობა 3210 0.13 0.29
აღმავალი თანმიმდევრობა 4567 3.83 4.52
სულ 15.16 24.85 4.60
რიცხვების შემთხვევითი ნაკრები 23.17 27.67 63.68

ყველაფერი კარგად იქნებოდა, მაგრამ, სამწუხაროდ, გამოკითხულთა მნიშვნელოვანი ნაწილი (23%) ირჩევს PIN კოდს თარიღის სახით და თითქმის მესამედი იყენებს დაბადების თარიღს. ეს მნიშვნელოვნად ცვლის საკითხს, რადგან თითქმის ყველა (99%) რესპონდენტმა უპასუხა, რომ მას საფულეში ინახავს. საბანკო ბარათებისხვადასხვა პირადობის მოწმობები, რომლებზეც ეს თარიღია დაბეჭდილი. თუ თავდამსხმელმა იცის ბარათის მფლობელის დაბადების დღე, მაშინ კომპეტენტური მიდგომით, PIN კოდის გამოცნობის ალბათობა იზრდება 9%-მდე.

ტოპ 100 ყველაზე პოპულარული პინი

0000, 0101-0103, 0110, 0111, 0123, 0202, 0303, 0404, 0505, 0606, 0707, 0808, 0909, 1010, 1101-1103, 1110-1112, 1123, 1201-1203, 1210-1212, 1234, 1956-2015, 2222, 2229, 2580, 3333, 4444, 5252, 5683, 6666, 7465, 7667.

P.S.პრაქტიკაში, რა თქმა უნდა, თავდამსხმელისთვის ბევრად უფრო ადვილია თქვენი PIN-ის თვალთვალი, ვიდრე გამოცნობა. მაგრამ თქვენ ასევე შეგიძლიათ დაიცვათ თავი ყურებისგან - თუნდაც, როგორც ჩანს, გამოუვალ სიტუაციაში: