
Информатика: өз цифрлық көмекшімізді жасаймыз 60-сабақ (барлығы 72)
Сақтық көшірме, жаңарту және оқиғалар журналы
Үйдің қосалқы кілтін елестетіңіз: оны ешқашан сынамасаңыз, есікті ашатыны белгісіз.
Картадағы орнымыз
72 сабақтың 60-сі. «Цифрлық қауіпсіздік» блогы (55–62). Үш ойдан алынған тапсырмасы бар жергілікті көмекшіні жалғастырамыз. Әр шараның шегі нақты: оқу нұсқасы дайын ашық сервиске айналмайды.
Жағдай және сұрақ
Үйдің қосалқы кілтін елестетіңіз: оны ешқашан сынамасаңыз, есікті ашатыны белгісіз. Сақтық көшірме де нақты қалпына келтіру сынағынан кейін ғана сенімді.
Жаңа сөздерді анық түсінейік
Сақтық көшірме — қалпына келтіруге арналған бөлек дерек нұсқасы. SHA-256 бақылау қосындысы бастапқы із сенімді сақталса, файл өзгерісін көрсетеді. Оқиғалар журналы әрекеттерді баяндайды, бірақ онда құпиясөз бен жеке мәтін болмауы тиіс. Жаңарту белгілі қатені түзетеді; оны сенімді көзден алып, кері қайту мүмкіндігін сақтаңыз.
Сабақтың тірек сигналы
Сұлбаның үш ұяшығын солдан оңға оқып, үшіншісін жабыңыз. Әр ұяшықтың кірісі мен әрекетін айтыңыз; жолдың немен аяқталатынын және қандай байқалатын фактіні тексеретініңізді болжаңыз. Суретті жоба файлымен не бақылау мысалымен салыстырыңыз. Сұлбадағы сан деректен шықпаса, әдемі сурет үшін деректі емес, сұлбаны түзетіңіз.
Қадамдап талдаймыз
step-06 ішінде data_assistant.py init арқылы база жасаңыз. python3 security_assistant.py verify assistant.db орындаңыз: tasks=3 sessions=4 күтіледі. Одан кейін backup пәрменімен backups/first.db жасап, жаңа restored.db файлына қалпына келтіріңіз; 45/0/25 есебін салыстырыңыз. Пәрмен бар файлды қайта жазудан бас тартады. Оқу көшірмесіне бір байт қосып, SHA-256 тексеруі қалпына келтіруден бас тартатынын көріңіз. Жалғыз жұмыс базасын бүлдірмеңіз.
Болжаңыз және тексеріңіз
Кодты қоспай тұрып күтілетін нәтижені жазыңыз. Оны step-06 не step-07 бумасында орындап, таңба бойынша салыстырыңыз және әр жолды түсіндіріңіз. Кейін бір қауіпсіз ойдан алынған кірісті өзгертіп, «болжау — іске қосу — өзгерту — түсіндіру — тексеру» айналымын қайталаңыз. Шағын жиындағы бақылауды нақты адамдарға берілген уәдеге айналдырмаңыз.
from pathlib import Path
from tempfile import TemporaryDirectory
from data_store import create_database
from security_assistant import backup, restore, verify
with TemporaryDirectory() as folder:
db, saved, restored = (Path(folder) / name for name in ("live.db", "backup.db", "restored.db"))
create_database(db, "tasks.json", "study_sessions.csv")
backup(db, saved)
print(verify(db), restore(saved, restored))
Күтілетін нәтиже
(3, 4) (3, 4)
Қатені табыңыз
Көшірменің жанындағы сәйкес SHA-256 авторды дәлелдемейді: біреу екеуін де ауыстыруы мүмкін. Көшірме жасалды дегеннің өзі оның жұмыс базасына айналатынын дәлелдемейді. Журналға құпия жазбаңыз.
Жобаға енгізілетін өзгеріс
1.3 жобасында бұрынғы үш тапсырма, төрт сабақ және еске салу ережесі сақталады. Жаңа әрекеттер security_assistant.py ішіне бөлінді: тексеру, бөлек көшірме жасау және тек жаңа файлға қалпына келтіру. Өзгеріс қай қатерге көмектесетінін және қайсына көмектеспейтінін жазыңыз; оқу дерегі ойдан алынған күйде.
Тапсырма және дәлел
Пәрмендерді, күтілетін 3/4 және 45/0/25 сандарын, өзгерген файл мен қайта жазудан бас тартуды көрсетіңіз. Бөлек көшірмені қайда сақтайтыныңызды және жаңартуды қалай сынайтыныңызды түсіндіріңіз.
Жаңа жағдайға көшіру
Отбасы суреттерді бір дискте, «көшірмесін» сол дискінің көрші бумасында ұстайды. Диск бұзылса не болады?
1, 7 және 30 күннен кейін қайталау
1 күннен кейін сұлбаны жатқа салып, қолданудың бір шегін табыңыз. 7 күннен кейін оны мәтінсіз досыңызға түсіндіріп, блоктың он сұрағының жетеуін шешіңіз; қате жауапты нақты кіріспен талдаңыз. 30 күннен кейін жобаның жаңа көшірмесін ашып, тексеруді қайталап, қағиданы жаңа мысалға көшіріңіз. Кіріс, күтілетін және нақты нәтижесі бар хаттаманы сақтаңыз.
Пікірлер (0)
Пікір қалдыру үшін кіріңіз →
Әзірге пікір жоқ. Бірінші болыңыз.