icoa-cli 2.19.196 → 2.19.198
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/commands/ai4ctf.js +1 -1
- package/dist/commands/ctf4ai-demo.js +1 -1
- package/dist/commands/ctf4vla.js +1 -1
- package/dist/commands/exam.js +1 -1
- package/dist/commands/lang.js +1 -1
- package/dist/commands/learn.js +1 -1
- package/dist/lib/ai4ctf-curriculum-12.js +1 -1
- package/dist/lib/ctf4ai-curriculum-12.js +1 -1
- package/dist/lib/demo-exam.js +1 -1
- package/dist/lib/hint-client.js +1 -1
- package/dist/lib/learn-curricula.d.ts +9 -1
- package/dist/lib/learn-curricula.js +1 -1
- package/dist/lib/learn-render.d.ts +3 -0
- package/dist/lib/learn-render.js +1 -1
- package/dist/lib/translation.js +1 -1
- package/dist/lib/translations-fetcher.d.ts +6 -0
- package/dist/lib/translations-fetcher.js +1 -0
- package/package.json +1 -2
- package/translations/ar/1.json +0 -9
- package/translations/ar/10.json +0 -9
- package/translations/ar/11.json +0 -9
- package/translations/ar/12.json +0 -9
- package/translations/ar/13.json +0 -9
- package/translations/ar/14.json +0 -9
- package/translations/ar/15.json +0 -9
- package/translations/ar/16.json +0 -9
- package/translations/ar/17.json +0 -9
- package/translations/ar/18.json +0 -9
- package/translations/ar/19.json +0 -9
- package/translations/ar/20.json +0 -9
- package/translations/ar/21.json +0 -9
- package/translations/ar/22.json +0 -9
- package/translations/ar/23.json +0 -9
- package/translations/ar/24.json +0 -9
- package/translations/ar/25.json +0 -9
- package/translations/ar/26.json +0 -9
- package/translations/ar/27.json +0 -9
- package/translations/ar/28.json +0 -9
- package/translations/ar/29.json +0 -9
- package/translations/ar/30.json +0 -9
- package/translations/ar/31.json +0 -9
- package/translations/ar/32.json +0 -9
- package/translations/ar/33.json +0 -9
- package/translations/ar/34.json +0 -9
- package/translations/ar/35.json +0 -9
- package/translations/ar/36.json +0 -9
- package/translations/ar/37.json +0 -9
- package/translations/ar/38.json +0 -9
- package/translations/ar/39.json +0 -9
- package/translations/ar/4.json +0 -9
- package/translations/ar/40.json +0 -9
- package/translations/ar/41.json +0 -9
- package/translations/ar/42.json +0 -9
- package/translations/ar/43.json +0 -9
- package/translations/ar/44.json +0 -9
- package/translations/ar/45.json +0 -9
- package/translations/ar/46.json +0 -9
- package/translations/ar/47.json +0 -9
- package/translations/ar/48.json +0 -9
- package/translations/ar/49.json +0 -9
- package/translations/ar/5.json +0 -9
- package/translations/ar/6.json +0 -9
- package/translations/ar/7.json +0 -9
- package/translations/ar/8.json +0 -9
- package/translations/ar/9.json +0 -9
- package/translations/ar/demo-explanations.json +0 -32
- package/translations/ar/demo.json +0 -332
- package/translations/bn/demo-explanations.json +0 -32
- package/translations/bn/i18n-snippet.ts +0 -1
- package/translations/de/1.json +0 -9
- package/translations/de/10.json +0 -9
- package/translations/de/11.json +0 -9
- package/translations/de/12.json +0 -9
- package/translations/de/13.json +0 -9
- package/translations/de/14.json +0 -9
- package/translations/de/15.json +0 -9
- package/translations/de/16.json +0 -9
- package/translations/de/17.json +0 -9
- package/translations/de/18.json +0 -9
- package/translations/de/19.json +0 -9
- package/translations/de/20.json +0 -9
- package/translations/de/21.json +0 -9
- package/translations/de/22.json +0 -9
- package/translations/de/23.json +0 -9
- package/translations/de/24.json +0 -9
- package/translations/de/25.json +0 -9
- package/translations/de/26.json +0 -9
- package/translations/de/27.json +0 -9
- package/translations/de/28.json +0 -9
- package/translations/de/29.json +0 -9
- package/translations/de/30.json +0 -9
- package/translations/de/31.json +0 -9
- package/translations/de/32.json +0 -9
- package/translations/de/33.json +0 -9
- package/translations/de/34.json +0 -9
- package/translations/de/35.json +0 -9
- package/translations/de/36.json +0 -9
- package/translations/de/37.json +0 -9
- package/translations/de/38.json +0 -9
- package/translations/de/39.json +0 -9
- package/translations/de/4.json +0 -9
- package/translations/de/40.json +0 -9
- package/translations/de/41.json +0 -9
- package/translations/de/42.json +0 -9
- package/translations/de/43.json +0 -9
- package/translations/de/44.json +0 -9
- package/translations/de/45.json +0 -9
- package/translations/de/46.json +0 -9
- package/translations/de/47.json +0 -9
- package/translations/de/48.json +0 -9
- package/translations/de/49.json +0 -9
- package/translations/de/5.json +0 -9
- package/translations/de/6.json +0 -9
- package/translations/de/7.json +0 -9
- package/translations/de/8.json +0 -9
- package/translations/de/9.json +0 -9
- package/translations/de/demo-explanations.json +0 -32
- package/translations/de/demo.json +0 -332
- package/translations/es/1.json +0 -9
- package/translations/es/10.json +0 -9
- package/translations/es/11.json +0 -9
- package/translations/es/12.json +0 -9
- package/translations/es/13.json +0 -9
- package/translations/es/14.json +0 -9
- package/translations/es/15.json +0 -9
- package/translations/es/16.json +0 -9
- package/translations/es/17.json +0 -9
- package/translations/es/18.json +0 -9
- package/translations/es/19.json +0 -9
- package/translations/es/20.json +0 -9
- package/translations/es/21.json +0 -9
- package/translations/es/22.json +0 -9
- package/translations/es/23.json +0 -9
- package/translations/es/24.json +0 -9
- package/translations/es/25.json +0 -9
- package/translations/es/26.json +0 -9
- package/translations/es/27.json +0 -9
- package/translations/es/28.json +0 -9
- package/translations/es/29.json +0 -9
- package/translations/es/30.json +0 -9
- package/translations/es/31.json +0 -9
- package/translations/es/32.json +0 -9
- package/translations/es/33.json +0 -9
- package/translations/es/34.json +0 -9
- package/translations/es/35.json +0 -9
- package/translations/es/36.json +0 -9
- package/translations/es/37.json +0 -9
- package/translations/es/38.json +0 -9
- package/translations/es/39.json +0 -9
- package/translations/es/4.json +0 -9
- package/translations/es/40.json +0 -9
- package/translations/es/41.json +0 -9
- package/translations/es/42.json +0 -9
- package/translations/es/43.json +0 -9
- package/translations/es/44.json +0 -9
- package/translations/es/45.json +0 -9
- package/translations/es/46.json +0 -9
- package/translations/es/47.json +0 -9
- package/translations/es/48.json +0 -9
- package/translations/es/49.json +0 -9
- package/translations/es/5.json +0 -9
- package/translations/es/6.json +0 -9
- package/translations/es/7.json +0 -9
- package/translations/es/8.json +0 -9
- package/translations/es/9.json +0 -9
- package/translations/es/demo-explanations.json +0 -32
- package/translations/es/demo.json +0 -332
- package/translations/fr/1.json +0 -9
- package/translations/fr/10.json +0 -9
- package/translations/fr/11.json +0 -9
- package/translations/fr/12.json +0 -9
- package/translations/fr/13.json +0 -9
- package/translations/fr/14.json +0 -9
- package/translations/fr/15.json +0 -9
- package/translations/fr/16.json +0 -9
- package/translations/fr/17.json +0 -9
- package/translations/fr/18.json +0 -9
- package/translations/fr/19.json +0 -9
- package/translations/fr/20.json +0 -9
- package/translations/fr/21.json +0 -9
- package/translations/fr/22.json +0 -9
- package/translations/fr/23.json +0 -9
- package/translations/fr/24.json +0 -9
- package/translations/fr/25.json +0 -9
- package/translations/fr/26.json +0 -9
- package/translations/fr/27.json +0 -9
- package/translations/fr/28.json +0 -9
- package/translations/fr/29.json +0 -9
- package/translations/fr/30.json +0 -9
- package/translations/fr/31.json +0 -9
- package/translations/fr/32.json +0 -9
- package/translations/fr/33.json +0 -9
- package/translations/fr/34.json +0 -9
- package/translations/fr/35.json +0 -9
- package/translations/fr/36.json +0 -9
- package/translations/fr/37.json +0 -9
- package/translations/fr/38.json +0 -9
- package/translations/fr/39.json +0 -9
- package/translations/fr/4.json +0 -9
- package/translations/fr/40.json +0 -9
- package/translations/fr/41.json +0 -9
- package/translations/fr/42.json +0 -9
- package/translations/fr/43.json +0 -9
- package/translations/fr/44.json +0 -9
- package/translations/fr/45.json +0 -9
- package/translations/fr/46.json +0 -9
- package/translations/fr/47.json +0 -9
- package/translations/fr/48.json +0 -9
- package/translations/fr/49.json +0 -9
- package/translations/fr/5.json +0 -9
- package/translations/fr/6.json +0 -9
- package/translations/fr/7.json +0 -9
- package/translations/fr/8.json +0 -9
- package/translations/fr/9.json +0 -9
- package/translations/fr/demo-explanations.json +0 -32
- package/translations/fr/demo.json +0 -332
- package/translations/hi/1.json +0 -9
- package/translations/hi/10.json +0 -9
- package/translations/hi/11.json +0 -9
- package/translations/hi/12.json +0 -9
- package/translations/hi/13.json +0 -9
- package/translations/hi/14.json +0 -9
- package/translations/hi/15.json +0 -9
- package/translations/hi/16.json +0 -9
- package/translations/hi/17.json +0 -9
- package/translations/hi/18.json +0 -9
- package/translations/hi/19.json +0 -9
- package/translations/hi/20.json +0 -9
- package/translations/hi/21.json +0 -9
- package/translations/hi/22.json +0 -9
- package/translations/hi/23.json +0 -9
- package/translations/hi/24.json +0 -9
- package/translations/hi/25.json +0 -9
- package/translations/hi/26.json +0 -9
- package/translations/hi/27.json +0 -9
- package/translations/hi/28.json +0 -9
- package/translations/hi/29.json +0 -9
- package/translations/hi/30.json +0 -9
- package/translations/hi/31.json +0 -9
- package/translations/hi/32.json +0 -9
- package/translations/hi/33.json +0 -9
- package/translations/hi/34.json +0 -9
- package/translations/hi/35.json +0 -9
- package/translations/hi/36.json +0 -9
- package/translations/hi/37.json +0 -9
- package/translations/hi/38.json +0 -9
- package/translations/hi/39.json +0 -9
- package/translations/hi/4.json +0 -9
- package/translations/hi/40.json +0 -9
- package/translations/hi/41.json +0 -9
- package/translations/hi/42.json +0 -9
- package/translations/hi/43.json +0 -9
- package/translations/hi/44.json +0 -9
- package/translations/hi/45.json +0 -9
- package/translations/hi/46.json +0 -9
- package/translations/hi/47.json +0 -9
- package/translations/hi/48.json +0 -9
- package/translations/hi/49.json +0 -9
- package/translations/hi/5.json +0 -9
- package/translations/hi/6.json +0 -9
- package/translations/hi/7.json +0 -9
- package/translations/hi/8.json +0 -9
- package/translations/hi/9.json +0 -9
- package/translations/hi/demo-explanations.json +0 -32
- package/translations/hi/demo.json +0 -332
- package/translations/ht/1.json +0 -9
- package/translations/ht/10.json +0 -9
- package/translations/ht/11.json +0 -9
- package/translations/ht/12.json +0 -9
- package/translations/ht/13.json +0 -9
- package/translations/ht/14.json +0 -9
- package/translations/ht/15.json +0 -9
- package/translations/ht/16.json +0 -9
- package/translations/ht/17.json +0 -9
- package/translations/ht/18.json +0 -9
- package/translations/ht/19.json +0 -9
- package/translations/ht/20.json +0 -9
- package/translations/ht/21.json +0 -9
- package/translations/ht/22.json +0 -9
- package/translations/ht/23.json +0 -9
- package/translations/ht/24.json +0 -9
- package/translations/ht/25.json +0 -9
- package/translations/ht/26.json +0 -9
- package/translations/ht/27.json +0 -9
- package/translations/ht/28.json +0 -9
- package/translations/ht/29.json +0 -9
- package/translations/ht/30.json +0 -9
- package/translations/ht/31.json +0 -9
- package/translations/ht/32.json +0 -9
- package/translations/ht/33.json +0 -9
- package/translations/ht/34.json +0 -9
- package/translations/ht/35.json +0 -9
- package/translations/ht/36.json +0 -9
- package/translations/ht/37.json +0 -9
- package/translations/ht/38.json +0 -9
- package/translations/ht/39.json +0 -9
- package/translations/ht/4.json +0 -9
- package/translations/ht/40.json +0 -9
- package/translations/ht/41.json +0 -9
- package/translations/ht/42.json +0 -9
- package/translations/ht/43.json +0 -9
- package/translations/ht/44.json +0 -9
- package/translations/ht/45.json +0 -9
- package/translations/ht/46.json +0 -9
- package/translations/ht/47.json +0 -9
- package/translations/ht/48.json +0 -9
- package/translations/ht/49.json +0 -9
- package/translations/ht/5.json +0 -9
- package/translations/ht/6.json +0 -9
- package/translations/ht/7.json +0 -9
- package/translations/ht/8.json +0 -9
- package/translations/ht/9.json +0 -9
- package/translations/ht/demo-explanations.json +0 -32
- package/translations/ht/demo.json +0 -332
- package/translations/ht/i18n-snippet.ts +0 -1
- package/translations/id/1.json +0 -9
- package/translations/id/10.json +0 -9
- package/translations/id/11.json +0 -9
- package/translations/id/12.json +0 -9
- package/translations/id/13.json +0 -9
- package/translations/id/14.json +0 -9
- package/translations/id/15.json +0 -9
- package/translations/id/16.json +0 -9
- package/translations/id/17.json +0 -9
- package/translations/id/18.json +0 -9
- package/translations/id/19.json +0 -9
- package/translations/id/20.json +0 -9
- package/translations/id/21.json +0 -9
- package/translations/id/22.json +0 -9
- package/translations/id/23.json +0 -9
- package/translations/id/24.json +0 -9
- package/translations/id/25.json +0 -9
- package/translations/id/26.json +0 -9
- package/translations/id/27.json +0 -9
- package/translations/id/28.json +0 -9
- package/translations/id/29.json +0 -9
- package/translations/id/30.json +0 -9
- package/translations/id/31.json +0 -9
- package/translations/id/32.json +0 -9
- package/translations/id/33.json +0 -9
- package/translations/id/34.json +0 -9
- package/translations/id/35.json +0 -9
- package/translations/id/36.json +0 -9
- package/translations/id/37.json +0 -9
- package/translations/id/38.json +0 -9
- package/translations/id/39.json +0 -9
- package/translations/id/4.json +0 -9
- package/translations/id/40.json +0 -9
- package/translations/id/41.json +0 -9
- package/translations/id/42.json +0 -9
- package/translations/id/43.json +0 -9
- package/translations/id/44.json +0 -9
- package/translations/id/45.json +0 -9
- package/translations/id/46.json +0 -9
- package/translations/id/47.json +0 -9
- package/translations/id/48.json +0 -9
- package/translations/id/49.json +0 -9
- package/translations/id/5.json +0 -9
- package/translations/id/6.json +0 -9
- package/translations/id/7.json +0 -9
- package/translations/id/8.json +0 -9
- package/translations/id/9.json +0 -9
- package/translations/id/demo-explanations.json +0 -32
- package/translations/id/demo.json +0 -332
- package/translations/ja/1.json +0 -9
- package/translations/ja/10.json +0 -9
- package/translations/ja/11.json +0 -9
- package/translations/ja/12.json +0 -9
- package/translations/ja/13.json +0 -9
- package/translations/ja/14.json +0 -9
- package/translations/ja/15.json +0 -9
- package/translations/ja/16.json +0 -9
- package/translations/ja/17.json +0 -9
- package/translations/ja/18.json +0 -9
- package/translations/ja/19.json +0 -9
- package/translations/ja/20.json +0 -9
- package/translations/ja/21.json +0 -9
- package/translations/ja/22.json +0 -9
- package/translations/ja/23.json +0 -9
- package/translations/ja/24.json +0 -9
- package/translations/ja/25.json +0 -9
- package/translations/ja/26.json +0 -9
- package/translations/ja/27.json +0 -9
- package/translations/ja/28.json +0 -9
- package/translations/ja/29.json +0 -9
- package/translations/ja/30.json +0 -9
- package/translations/ja/31.json +0 -9
- package/translations/ja/32.json +0 -9
- package/translations/ja/33.json +0 -9
- package/translations/ja/34.json +0 -9
- package/translations/ja/35.json +0 -9
- package/translations/ja/36.json +0 -9
- package/translations/ja/37.json +0 -9
- package/translations/ja/38.json +0 -9
- package/translations/ja/39.json +0 -9
- package/translations/ja/4.json +0 -9
- package/translations/ja/40.json +0 -9
- package/translations/ja/41.json +0 -9
- package/translations/ja/42.json +0 -9
- package/translations/ja/43.json +0 -9
- package/translations/ja/44.json +0 -9
- package/translations/ja/45.json +0 -9
- package/translations/ja/46.json +0 -9
- package/translations/ja/47.json +0 -9
- package/translations/ja/48.json +0 -9
- package/translations/ja/49.json +0 -9
- package/translations/ja/5.json +0 -9
- package/translations/ja/6.json +0 -9
- package/translations/ja/7.json +0 -9
- package/translations/ja/8.json +0 -9
- package/translations/ja/9.json +0 -9
- package/translations/ja/demo-explanations.json +0 -32
- package/translations/ja/demo.json +0 -332
- package/translations/ko/1.json +0 -9
- package/translations/ko/10.json +0 -9
- package/translations/ko/11.json +0 -9
- package/translations/ko/12.json +0 -9
- package/translations/ko/13.json +0 -9
- package/translations/ko/14.json +0 -9
- package/translations/ko/15.json +0 -9
- package/translations/ko/16.json +0 -9
- package/translations/ko/17.json +0 -9
- package/translations/ko/18.json +0 -9
- package/translations/ko/19.json +0 -9
- package/translations/ko/20.json +0 -9
- package/translations/ko/21.json +0 -9
- package/translations/ko/22.json +0 -9
- package/translations/ko/23.json +0 -9
- package/translations/ko/24.json +0 -9
- package/translations/ko/25.json +0 -9
- package/translations/ko/26.json +0 -9
- package/translations/ko/27.json +0 -9
- package/translations/ko/28.json +0 -9
- package/translations/ko/29.json +0 -9
- package/translations/ko/30.json +0 -9
- package/translations/ko/31.json +0 -9
- package/translations/ko/32.json +0 -9
- package/translations/ko/33.json +0 -9
- package/translations/ko/34.json +0 -9
- package/translations/ko/35.json +0 -9
- package/translations/ko/36.json +0 -9
- package/translations/ko/37.json +0 -9
- package/translations/ko/38.json +0 -9
- package/translations/ko/39.json +0 -9
- package/translations/ko/4.json +0 -9
- package/translations/ko/40.json +0 -9
- package/translations/ko/41.json +0 -9
- package/translations/ko/42.json +0 -9
- package/translations/ko/43.json +0 -9
- package/translations/ko/44.json +0 -9
- package/translations/ko/45.json +0 -9
- package/translations/ko/46.json +0 -9
- package/translations/ko/47.json +0 -9
- package/translations/ko/48.json +0 -9
- package/translations/ko/49.json +0 -9
- package/translations/ko/5.json +0 -9
- package/translations/ko/6.json +0 -9
- package/translations/ko/7.json +0 -9
- package/translations/ko/8.json +0 -9
- package/translations/ko/9.json +0 -9
- package/translations/ko/demo-explanations.json +0 -32
- package/translations/ko/demo.json +0 -332
- package/translations/lo/demo-explanations.json +0 -32
- package/translations/lo/i18n-snippet.ts +0 -1
- package/translations/pt/1.json +0 -9
- package/translations/pt/10.json +0 -9
- package/translations/pt/11.json +0 -9
- package/translations/pt/12.json +0 -9
- package/translations/pt/13.json +0 -9
- package/translations/pt/14.json +0 -9
- package/translations/pt/15.json +0 -9
- package/translations/pt/16.json +0 -9
- package/translations/pt/17.json +0 -9
- package/translations/pt/18.json +0 -9
- package/translations/pt/19.json +0 -9
- package/translations/pt/20.json +0 -9
- package/translations/pt/21.json +0 -9
- package/translations/pt/22.json +0 -9
- package/translations/pt/23.json +0 -9
- package/translations/pt/24.json +0 -9
- package/translations/pt/25.json +0 -9
- package/translations/pt/26.json +0 -9
- package/translations/pt/27.json +0 -9
- package/translations/pt/28.json +0 -9
- package/translations/pt/29.json +0 -9
- package/translations/pt/30.json +0 -9
- package/translations/pt/31.json +0 -9
- package/translations/pt/32.json +0 -9
- package/translations/pt/33.json +0 -9
- package/translations/pt/34.json +0 -9
- package/translations/pt/35.json +0 -9
- package/translations/pt/36.json +0 -9
- package/translations/pt/37.json +0 -9
- package/translations/pt/38.json +0 -9
- package/translations/pt/39.json +0 -9
- package/translations/pt/4.json +0 -9
- package/translations/pt/40.json +0 -9
- package/translations/pt/41.json +0 -9
- package/translations/pt/42.json +0 -9
- package/translations/pt/43.json +0 -9
- package/translations/pt/44.json +0 -9
- package/translations/pt/45.json +0 -9
- package/translations/pt/46.json +0 -9
- package/translations/pt/47.json +0 -9
- package/translations/pt/48.json +0 -9
- package/translations/pt/49.json +0 -9
- package/translations/pt/5.json +0 -9
- package/translations/pt/6.json +0 -9
- package/translations/pt/7.json +0 -9
- package/translations/pt/8.json +0 -9
- package/translations/pt/9.json +0 -9
- package/translations/pt/demo-explanations.json +0 -32
- package/translations/pt/demo.json +0 -332
- package/translations/ru/1.json +0 -9
- package/translations/ru/10.json +0 -9
- package/translations/ru/11.json +0 -9
- package/translations/ru/12.json +0 -9
- package/translations/ru/13.json +0 -9
- package/translations/ru/14.json +0 -9
- package/translations/ru/15.json +0 -9
- package/translations/ru/16.json +0 -9
- package/translations/ru/17.json +0 -9
- package/translations/ru/18.json +0 -9
- package/translations/ru/19.json +0 -9
- package/translations/ru/20.json +0 -9
- package/translations/ru/21.json +0 -9
- package/translations/ru/22.json +0 -9
- package/translations/ru/23.json +0 -9
- package/translations/ru/24.json +0 -9
- package/translations/ru/25.json +0 -9
- package/translations/ru/26.json +0 -9
- package/translations/ru/27.json +0 -9
- package/translations/ru/28.json +0 -9
- package/translations/ru/29.json +0 -9
- package/translations/ru/30.json +0 -9
- package/translations/ru/31.json +0 -9
- package/translations/ru/32.json +0 -9
- package/translations/ru/33.json +0 -9
- package/translations/ru/34.json +0 -9
- package/translations/ru/35.json +0 -9
- package/translations/ru/36.json +0 -9
- package/translations/ru/37.json +0 -9
- package/translations/ru/38.json +0 -9
- package/translations/ru/39.json +0 -9
- package/translations/ru/4.json +0 -9
- package/translations/ru/40.json +0 -9
- package/translations/ru/41.json +0 -9
- package/translations/ru/42.json +0 -9
- package/translations/ru/43.json +0 -9
- package/translations/ru/44.json +0 -9
- package/translations/ru/45.json +0 -9
- package/translations/ru/46.json +0 -9
- package/translations/ru/47.json +0 -9
- package/translations/ru/48.json +0 -9
- package/translations/ru/49.json +0 -9
- package/translations/ru/5.json +0 -9
- package/translations/ru/6.json +0 -9
- package/translations/ru/7.json +0 -9
- package/translations/ru/8.json +0 -9
- package/translations/ru/9.json +0 -9
- package/translations/ru/demo-explanations.json +0 -32
- package/translations/ru/demo.json +0 -332
- package/translations/si/demo-explanations.json +0 -32
- package/translations/sw/demo-explanations.json +0 -32
- package/translations/sw/i18n-snippet.ts +0 -1
- package/translations/th/1.json +0 -9
- package/translations/th/10.json +0 -9
- package/translations/th/11.json +0 -9
- package/translations/th/12.json +0 -9
- package/translations/th/13.json +0 -9
- package/translations/th/14.json +0 -9
- package/translations/th/15.json +0 -9
- package/translations/th/16.json +0 -9
- package/translations/th/17.json +0 -9
- package/translations/th/18.json +0 -9
- package/translations/th/19.json +0 -9
- package/translations/th/20.json +0 -9
- package/translations/th/21.json +0 -9
- package/translations/th/22.json +0 -9
- package/translations/th/23.json +0 -9
- package/translations/th/24.json +0 -9
- package/translations/th/25.json +0 -9
- package/translations/th/26.json +0 -9
- package/translations/th/27.json +0 -9
- package/translations/th/28.json +0 -9
- package/translations/th/29.json +0 -9
- package/translations/th/30.json +0 -9
- package/translations/th/31.json +0 -9
- package/translations/th/32.json +0 -9
- package/translations/th/33.json +0 -9
- package/translations/th/34.json +0 -9
- package/translations/th/35.json +0 -9
- package/translations/th/36.json +0 -9
- package/translations/th/37.json +0 -9
- package/translations/th/38.json +0 -9
- package/translations/th/39.json +0 -9
- package/translations/th/4.json +0 -9
- package/translations/th/40.json +0 -9
- package/translations/th/41.json +0 -9
- package/translations/th/42.json +0 -9
- package/translations/th/43.json +0 -9
- package/translations/th/44.json +0 -9
- package/translations/th/45.json +0 -9
- package/translations/th/46.json +0 -9
- package/translations/th/47.json +0 -9
- package/translations/th/48.json +0 -9
- package/translations/th/49.json +0 -9
- package/translations/th/5.json +0 -9
- package/translations/th/6.json +0 -9
- package/translations/th/7.json +0 -9
- package/translations/th/8.json +0 -9
- package/translations/th/9.json +0 -9
- package/translations/th/demo-explanations.json +0 -32
- package/translations/th/demo.json +0 -332
- package/translations/tr/1.json +0 -9
- package/translations/tr/10.json +0 -9
- package/translations/tr/11.json +0 -9
- package/translations/tr/12.json +0 -9
- package/translations/tr/13.json +0 -9
- package/translations/tr/14.json +0 -9
- package/translations/tr/15.json +0 -9
- package/translations/tr/16.json +0 -9
- package/translations/tr/17.json +0 -9
- package/translations/tr/18.json +0 -9
- package/translations/tr/19.json +0 -9
- package/translations/tr/20.json +0 -9
- package/translations/tr/21.json +0 -9
- package/translations/tr/22.json +0 -9
- package/translations/tr/23.json +0 -9
- package/translations/tr/24.json +0 -9
- package/translations/tr/25.json +0 -9
- package/translations/tr/26.json +0 -9
- package/translations/tr/27.json +0 -9
- package/translations/tr/28.json +0 -9
- package/translations/tr/30.json +0 -9
- package/translations/tr/31.json +0 -9
- package/translations/tr/32.json +0 -9
- package/translations/tr/33.json +0 -9
- package/translations/tr/34.json +0 -9
- package/translations/tr/35.json +0 -9
- package/translations/tr/36.json +0 -9
- package/translations/tr/37.json +0 -9
- package/translations/tr/38.json +0 -9
- package/translations/tr/39.json +0 -9
- package/translations/tr/4.json +0 -9
- package/translations/tr/40.json +0 -9
- package/translations/tr/41.json +0 -9
- package/translations/tr/42.json +0 -9
- package/translations/tr/43.json +0 -9
- package/translations/tr/44.json +0 -9
- package/translations/tr/45.json +0 -9
- package/translations/tr/46.json +0 -9
- package/translations/tr/47.json +0 -9
- package/translations/tr/48.json +0 -9
- package/translations/tr/49.json +0 -9
- package/translations/tr/5.json +0 -9
- package/translations/tr/6.json +0 -9
- package/translations/tr/7.json +0 -9
- package/translations/tr/8.json +0 -9
- package/translations/tr/9.json +0 -9
- package/translations/tr/demo-explanations.json +0 -32
- package/translations/tr/demo.json +0 -332
- package/translations/uk/1.json +0 -9
- package/translations/uk/10.json +0 -9
- package/translations/uk/11.json +0 -9
- package/translations/uk/12.json +0 -9
- package/translations/uk/13.json +0 -9
- package/translations/uk/14.json +0 -9
- package/translations/uk/15.json +0 -9
- package/translations/uk/16.json +0 -9
- package/translations/uk/17.json +0 -9
- package/translations/uk/18.json +0 -9
- package/translations/uk/19.json +0 -9
- package/translations/uk/20.json +0 -9
- package/translations/uk/21.json +0 -9
- package/translations/uk/22.json +0 -9
- package/translations/uk/23.json +0 -9
- package/translations/uk/24.json +0 -9
- package/translations/uk/25.json +0 -9
- package/translations/uk/26.json +0 -9
- package/translations/uk/27.json +0 -9
- package/translations/uk/28.json +0 -9
- package/translations/uk/29.json +0 -9
- package/translations/uk/30.json +0 -9
- package/translations/uk/31.json +0 -9
- package/translations/uk/32.json +0 -9
- package/translations/uk/33.json +0 -9
- package/translations/uk/34.json +0 -9
- package/translations/uk/35.json +0 -9
- package/translations/uk/36.json +0 -9
- package/translations/uk/37.json +0 -9
- package/translations/uk/38.json +0 -9
- package/translations/uk/39.json +0 -9
- package/translations/uk/4.json +0 -9
- package/translations/uk/40.json +0 -9
- package/translations/uk/41.json +0 -9
- package/translations/uk/42.json +0 -9
- package/translations/uk/43.json +0 -9
- package/translations/uk/44.json +0 -9
- package/translations/uk/45.json +0 -9
- package/translations/uk/46.json +0 -9
- package/translations/uk/47.json +0 -9
- package/translations/uk/48.json +0 -9
- package/translations/uk/49.json +0 -9
- package/translations/uk/5.json +0 -9
- package/translations/uk/6.json +0 -9
- package/translations/uk/7.json +0 -9
- package/translations/uk/8.json +0 -9
- package/translations/uk/9.json +0 -9
- package/translations/uk/demo-explanations.json +0 -32
- package/translations/uk/demo.json +0 -332
- package/translations/uz/demo-explanations.json +0 -32
- package/translations/uz/i18n-snippet.ts +0 -1
- package/translations/vi/1.json +0 -9
- package/translations/vi/10.json +0 -9
- package/translations/vi/11.json +0 -9
- package/translations/vi/12.json +0 -9
- package/translations/vi/14.json +0 -9
- package/translations/vi/15.json +0 -9
- package/translations/vi/16.json +0 -9
- package/translations/vi/17.json +0 -9
- package/translations/vi/18.json +0 -9
- package/translations/vi/19.json +0 -9
- package/translations/vi/20.json +0 -9
- package/translations/vi/21.json +0 -9
- package/translations/vi/22.json +0 -9
- package/translations/vi/23.json +0 -9
- package/translations/vi/24.json +0 -9
- package/translations/vi/25.json +0 -9
- package/translations/vi/26.json +0 -9
- package/translations/vi/27.json +0 -9
- package/translations/vi/28.json +0 -9
- package/translations/vi/29.json +0 -9
- package/translations/vi/30.json +0 -9
- package/translations/vi/31.json +0 -9
- package/translations/vi/32.json +0 -9
- package/translations/vi/33.json +0 -9
- package/translations/vi/34.json +0 -9
- package/translations/vi/35.json +0 -9
- package/translations/vi/36.json +0 -9
- package/translations/vi/37.json +0 -9
- package/translations/vi/38.json +0 -9
- package/translations/vi/39.json +0 -9
- package/translations/vi/4.json +0 -9
- package/translations/vi/40.json +0 -9
- package/translations/vi/41.json +0 -9
- package/translations/vi/42.json +0 -9
- package/translations/vi/43.json +0 -9
- package/translations/vi/44.json +0 -9
- package/translations/vi/45.json +0 -9
- package/translations/vi/46.json +0 -9
- package/translations/vi/47.json +0 -9
- package/translations/vi/48.json +0 -9
- package/translations/vi/49.json +0 -9
- package/translations/vi/5.json +0 -9
- package/translations/vi/6.json +0 -9
- package/translations/vi/7.json +0 -9
- package/translations/vi/8.json +0 -9
- package/translations/vi/9.json +0 -9
- package/translations/vi/demo-explanations.json +0 -32
- package/translations/vi/demo.json +0 -332
- package/translations/zh/1.json +0 -9
- package/translations/zh/10.json +0 -9
- package/translations/zh/11.json +0 -9
- package/translations/zh/12.json +0 -9
- package/translations/zh/13.json +0 -9
- package/translations/zh/14.json +0 -9
- package/translations/zh/15.json +0 -9
- package/translations/zh/16.json +0 -9
- package/translations/zh/17.json +0 -9
- package/translations/zh/18.json +0 -9
- package/translations/zh/19.json +0 -9
- package/translations/zh/20.json +0 -9
- package/translations/zh/21.json +0 -9
- package/translations/zh/22.json +0 -9
- package/translations/zh/23.json +0 -9
- package/translations/zh/24.json +0 -9
- package/translations/zh/25.json +0 -9
- package/translations/zh/26.json +0 -9
- package/translations/zh/27.json +0 -9
- package/translations/zh/28.json +0 -9
- package/translations/zh/29.json +0 -9
- package/translations/zh/30.json +0 -9
- package/translations/zh/31.json +0 -9
- package/translations/zh/32.json +0 -9
- package/translations/zh/33.json +0 -9
- package/translations/zh/34.json +0 -9
- package/translations/zh/35.json +0 -9
- package/translations/zh/36.json +0 -9
- package/translations/zh/37.json +0 -9
- package/translations/zh/38.json +0 -9
- package/translations/zh/39.json +0 -9
- package/translations/zh/4.json +0 -9
- package/translations/zh/40.json +0 -9
- package/translations/zh/41.json +0 -9
- package/translations/zh/42.json +0 -9
- package/translations/zh/43.json +0 -9
- package/translations/zh/44.json +0 -9
- package/translations/zh/45.json +0 -9
- package/translations/zh/46.json +0 -9
- package/translations/zh/47.json +0 -9
- package/translations/zh/48.json +0 -9
- package/translations/zh/49.json +0 -9
- package/translations/zh/5.json +0 -9
- package/translations/zh/6.json +0 -9
- package/translations/zh/7.json +0 -9
- package/translations/zh/8.json +0 -9
- package/translations/zh/9.json +0 -9
- package/translations/zh/demo-explanations.json +0 -32
- package/translations/zh/demo.json +0 -332
package/translations/ru/33.json
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"id": 33,
|
|
3
|
-
"name": "Say Shells!",
|
|
4
|
-
"category": "pwn",
|
|
5
|
-
"translation": "Простое web app позволяет загружать image files для просмотра их EXIF metadata. Но что-то не дает покоя... неужели ваши изображения анализируются немного слишком глубоко?\nСможете ли вы обманом заставить server выполнить ваш собственный command — и раскрыть содержимое скрытого flag.txt файла?\n\nПримечание: Разрешены только image file uploads. Вам не понадобится brute force — только немного креативности и правильный format.",
|
|
6
|
-
"lang": "ru",
|
|
7
|
-
"model": "gemini-3.1-pro-preview",
|
|
8
|
-
"timestamp": "2026-04-08T04:06:47.000Z"
|
|
9
|
-
}
|
package/translations/ru/34.json
DELETED
package/translations/ru/35.json
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"id": 35,
|
|
3
|
-
"name": "cafe1995",
|
|
4
|
-
"category": "rev",
|
|
5
|
-
"translation": "Вы подобрали части программы от разработчика без присмотра, которого только что уволили.\nНайдите password и верните компанию в строй... иначе вас тоже уволят.",
|
|
6
|
-
"lang": "ru",
|
|
7
|
-
"model": "gemini-3.1-pro-preview",
|
|
8
|
-
"timestamp": "2026-04-08T04:06:58.568Z"
|
|
9
|
-
}
|
package/translations/ru/36.json
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"id": 36,
|
|
3
|
-
"name": "Doors 3",
|
|
4
|
-
"category": "rev",
|
|
5
|
-
"translation": "У вашего друга есть один последний flag, который, по его мнению, вам не получить, поскольку они тестируют свою способность обнаруживать bypassing the licence check.\n\nПопробуйте достать последний flag. Возможно, вам понадобится patch the binary, чтобы добраться до него, но есть несколько маршрутов.",
|
|
6
|
-
"lang": "ru",
|
|
7
|
-
"model": "gemini-3.1-pro-preview",
|
|
8
|
-
"timestamp": "2026-04-08T04:07:10.642Z"
|
|
9
|
-
}
|
package/translations/ru/37.json
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"id": 37,
|
|
3
|
-
"name": "Doors 2",
|
|
4
|
-
"category": "rev",
|
|
5
|
-
"translation": "Твой друг очень благодарен, что ты нашел тот flag, о котором они забыли!\n\nОни потратили некоторое время, чтобы спрятать остальные flags и надеются, что ты не сможешь до них добраться. Как думаешь, сможешь ли ты реверснуть их key validation function?\nСгенерируй свой собственный licence key для их program и получи flag!",
|
|
6
|
-
"lang": "ru",
|
|
7
|
-
"model": "gemini-3.1-pro-preview",
|
|
8
|
-
"timestamp": "2026-04-08T04:07:15.571Z"
|
|
9
|
-
}
|
package/translations/ru/38.json
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"id": 38,
|
|
3
|
-
"name": "Doors",
|
|
4
|
-
"category": "rev",
|
|
5
|
-
"translation": "Твой друг прислал тебе прототип программы для верификации ключей безопасности, которую он пишет на C#. Здесь есть несколько флагов, но можешь ли ты помочь, найдя тот флаг, который он забыл зашифровать?",
|
|
6
|
-
"lang": "ru",
|
|
7
|
-
"model": "gemini-3.1-pro-preview",
|
|
8
|
-
"timestamp": "2026-04-08T04:07:23.602Z"
|
|
9
|
-
}
|
package/translations/ru/39.json
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"id": 39,
|
|
3
|
-
"name": "Too Many Flags",
|
|
4
|
-
"category": "rev",
|
|
5
|
-
"translation": "Мы нашли этот файл, полный флагов, но мы не знаем, какой из них правильный! Сможете ли вы выяснить, как были сгенерированы эти флаги, и найти правильный?",
|
|
6
|
-
"lang": "ru",
|
|
7
|
-
"model": "gemini-3.1-pro-preview",
|
|
8
|
-
"timestamp": "2026-04-08T04:07:31.521Z"
|
|
9
|
-
}
|
package/translations/ru/4.json
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"id": 4,
|
|
3
|
-
"name": "#InMyLibraryClashingEra",
|
|
4
|
-
"category": "crypto",
|
|
5
|
-
"translation": "Я создал(а) до смешного простую? hash function. Найдите clash, и я дам вам библиотеку, к которой можно подъехать. То есть, если вы сможете прочитать то, что у меня есть. Моя вина, я выпил(а) 32 ml of Base model Dasani перед тем, как это сделать.\n\nВозможно, понадобится pycryptodome, так что установите ее заранее.\n\nНе забудьте заключить флаг в `pecan{flag}`.",
|
|
6
|
-
"lang": "ru",
|
|
7
|
-
"model": "gemini-3.1-pro-preview",
|
|
8
|
-
"timestamp": "2026-04-08T04:03:14.376Z"
|
|
9
|
-
}
|
package/translations/ru/40.json
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"id": 40,
|
|
3
|
-
"name": "Xanarto",
|
|
4
|
-
"category": "rev",
|
|
5
|
-
"translation": "Я нашел этого парня на LinkedIn, который утверждал, что создал uncrackable algorithm. Опровергни его. Я прикрепил post в виде image.",
|
|
6
|
-
"lang": "ru",
|
|
7
|
-
"model": "gemini-3.1-pro-preview",
|
|
8
|
-
"timestamp": "2026-04-08T04:07:41.740Z"
|
|
9
|
-
}
|
package/translations/ru/41.json
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"id": 41,
|
|
3
|
-
"name": "Cheese",
|
|
4
|
-
"category": "steg",
|
|
5
|
-
"translation": "Для этого испытания необходимо углубиться в предоставленный image file в рамках проклятия сыра, используя различные tools, чтобы обнаружить то, что некоторые отбросили бы как совершенно случайный text.\n\nЕсли бы только эту string можно было как-то манипулировать или преобразовать, это могло бы быть нашей единственной надеждой найти flag, чтобы снять проклятие сыра раз и навсегда......\n\nEnjoy :)",
|
|
6
|
-
"lang": "ru",
|
|
7
|
-
"model": "gemini-3.1-pro-preview",
|
|
8
|
-
"timestamp": "2026-04-08T04:07:48.346Z"
|
|
9
|
-
}
|
package/translations/ru/42.json
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"id": 42,
|
|
3
|
-
"name": "Dogs Always Know",
|
|
4
|
-
"category": "steg",
|
|
5
|
-
"translation": "У собак есть нюх на секреты — зарытые глубоко, там, где никто не догадается искать. Доверьтесь их инстинктам; иногда то, что скрыто, находится не на виду, а в костях под поверхностью.",
|
|
6
|
-
"lang": "ru",
|
|
7
|
-
"model": "gemini-3.1-pro-preview",
|
|
8
|
-
"timestamp": "2026-04-08T04:07:51.746Z"
|
|
9
|
-
}
|
package/translations/ru/43.json
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"id": 43,
|
|
3
|
-
"name": "In the fine print",
|
|
4
|
-
"category": "steg",
|
|
5
|
-
"translation": "В неустановленном месте был обнаружен набор распечатанных документов. Они выглядят совершенно невинно, но что-то не так...",
|
|
6
|
-
"lang": "ru",
|
|
7
|
-
"model": "gemini-3.1-pro-preview",
|
|
8
|
-
"timestamp": "2026-04-08T04:07:55.448Z"
|
|
9
|
-
}
|
package/translations/ru/44.json
DELETED
package/translations/ru/45.json
DELETED
package/translations/ru/46.json
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"id": 46,
|
|
3
|
-
"name": "Looking through the sound",
|
|
4
|
-
"category": "steg",
|
|
5
|
-
"translation": "Не каждое сообщение передается на звуковых волнах. Вам придется *взглянуть* сквозь шум. Пусть ваши глаза слушают, и пусть музыка выговорит это для вас. Примечание: Вам *не* нужно слушать audio, чтобы выполнить это challenge.",
|
|
6
|
-
"lang": "ru",
|
|
7
|
-
"model": "gemini-3.1-pro-preview",
|
|
8
|
-
"timestamp": "2026-04-08T04:08:07.660Z"
|
|
9
|
-
}
|
package/translations/ru/47.json
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"id": 47,
|
|
3
|
-
"name": "Nothing to See Here",
|
|
4
|
-
"category": "steg",
|
|
5
|
-
"translation": "Вот небольшой рисунок, который я сделал. В нём, правда, ничего не видно, как вы видите.",
|
|
6
|
-
"lang": "ru",
|
|
7
|
-
"model": "gemini-3.1-pro-preview",
|
|
8
|
-
"timestamp": "2026-04-08T04:08:13.555Z"
|
|
9
|
-
}
|
package/translations/ru/48.json
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"id": 48,
|
|
3
|
-
"name": "Stuck in Your Head",
|
|
4
|
-
"category": "steg",
|
|
5
|
-
"translation": "Ты должен послушать мою любимую песню и рассказать мне 21 причину, почему она лучшая!",
|
|
6
|
-
"lang": "ru",
|
|
7
|
-
"model": "gemini-3.1-pro-preview",
|
|
8
|
-
"timestamp": "2026-04-08T04:08:19.742Z"
|
|
9
|
-
}
|
package/translations/ru/49.json
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"id": 49,
|
|
3
|
-
"name": "TLSB",
|
|
4
|
-
"category": "steg",
|
|
5
|
-
"translation": "Возможно, вы слышали о Least Significant Bit (LSB) Steganography, но слышали ли вы когда-нибудь о Third Least Significant Bit (TLSB) Steganography? (Надеюсь, нет, учитывая, что я придумал это для этого задания). (Подсказка: Я спрятал секрет в image byte order)",
|
|
6
|
-
"lang": "ru",
|
|
7
|
-
"model": "gemini-3.1-pro-preview",
|
|
8
|
-
"timestamp": "2026-04-08T04:08:28.976Z"
|
|
9
|
-
}
|
package/translations/ru/5.json
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"id": 5,
|
|
3
|
-
"name": "Multi-layer",
|
|
4
|
-
"category": "crypto",
|
|
5
|
-
"translation": "У этой штуки есть слои.\n\n```\nZnJpcmEgbyBmY25wciBmcmlyYSBhdmFyIGZjbnByIGZ2ayBzIGZjbnByIGZyaXJhIHN2aXIgZmNucHIgZ2jiIG1yZWIgZmNucHIgZnZrIGZyaXJhIGZjbnByIGZ2ayBzIGZjbnByIGZyaXJhIHNiaGUgZmNucHIgZ2jiIG1yZWIgZmNucHIgZnJpcmEgc2JoZSBmY25wciBmdmsgcnZ0dWcgZmNucHIgZnZrIGF2YXIgZmNucHIgZnJpcmEgZ3VlcnIgZmNucHIgZnJpcmEgcQ==\n```\n\nПомните, что формат флага: `pecan{flag_goes_here}`",
|
|
6
|
-
"lang": "ru",
|
|
7
|
-
"model": "gemini-3.1-pro-preview",
|
|
8
|
-
"timestamp": "2026-04-08T04:03:21.146Z"
|
|
9
|
-
}
|
package/translations/ru/6.json
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"id": 6,
|
|
3
|
-
"name": "Mysteries of the Tomb",
|
|
4
|
-
"category": "crypto",
|
|
5
|
-
"translation": "В затененных глубинах Долины Царей исследователи обнаружили гробницу, давно утерянную во времени. В ее сердце покоится древняя каменная табличка, тщательно выгравированная таинственными глифами — пирамида секретов, созданная преданными писцами, охраняющими самое священное сокровище фараона.\n\nБлагодаря тщательному переводу, появляется повторяющаяся легенда: эта табличка хранит ключ к несметной силе. Вооружившись своими усердными заметками и растущими знаниями символов, вы начинаете разгадывать ее загадочное послание.\n\nК настоящему моменту надпись на вершине таблички гласит:\n\"Чтобы раскрыть истину, прочтите камни на первом свете рассвета, прослеживая путь от вершины до зыбучих песков.\"\n\nFormat: `pecan{flag}`",
|
|
6
|
-
"lang": "ru",
|
|
7
|
-
"model": "gemini-3.1-pro-preview",
|
|
8
|
-
"timestamp": "2026-04-08T04:03:27.503Z"
|
|
9
|
-
}
|
package/translations/ru/7.json
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"id": 7,
|
|
3
|
-
"name": "RSA101",
|
|
4
|
-
"category": "crypto",
|
|
5
|
-
"translation": "Мы получили сообщение, которое, как мы считаем, зашифровано с помощью RSA, но primes в public key могут быть слабыми. Найдите factors и decipher сообщение.\n\n```\nn = 914224879713534891752745051672415462330144197757968187295993\ne = 17\nciphertext = 152293808340616594229073242267037730353433147091103189533666\n```",
|
|
6
|
-
"lang": "ru",
|
|
7
|
-
"model": "gemini-3.1-pro-preview",
|
|
8
|
-
"timestamp": "2026-04-08T04:03:34.896Z"
|
|
9
|
-
}
|
package/translations/ru/8.json
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"id": 8,
|
|
3
|
-
"name": "Sheet Music Cipher",
|
|
4
|
-
"category": "crypto",
|
|
5
|
-
"translation": "Никто никогда не узнает, что я использовал(а) Compound Motivic Musical Cipher. Я могу просто проигрывать музыку вслух и отправлять сообщения так, что никто ничего не заподозрит.",
|
|
6
|
-
"lang": "ru",
|
|
7
|
-
"model": "gemini-3.1-pro-preview",
|
|
8
|
-
"timestamp": "2026-04-08T04:03:41.396Z"
|
|
9
|
-
}
|
package/translations/ru/9.json
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"id": 9,
|
|
3
|
-
"name": "That's Not My Unicode",
|
|
4
|
-
"category": "crypto",
|
|
5
|
-
"translation": "Эти странные символы кажутся древними, но они, возможно, пытаются рассказать вам нечто более современное. Соберите сообщение, скрытое на виду — иногда то, что выглядит старым, может говорить на новом языке.",
|
|
6
|
-
"lang": "ru",
|
|
7
|
-
"model": "gemini-3.1-pro-preview",
|
|
8
|
-
"timestamp": "2026-04-08T04:03:46.932Z"
|
|
9
|
-
}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"1": "RSA — это асимметричный шифр (с открытым ключом). AES, DES и Blowfish — это симметричные шифры, которые используют один и тот же ключ для шифрования и расшифровки.",
|
|
3
|
-
"2": "SQL injection происходит, когда пользовательский ввод вставляется напрямую в запросы к базе данных без надлежащей очистки, что позволяет злоумышленникам манипулировать запросом.",
|
|
4
|
-
"3": "HTTP 403 означает Forbidden — сервер понял запрос, но отказывается его авторизовать. 401 — это Unauthorized, 404 — Not Found, 500 — Internal Server Error.",
|
|
5
|
-
"4": "Nonce (число, используемое один раз) — это случайное значение, используемое в криптографических протоколах для предотвращения атак повторного воспроизведения, гарантирующее, что каждый запрос или сообщение является уникальным и не может быть повторно использовано злоумышленником.",
|
|
6
|
-
"5": "Wireshark — это стандартный инструмент для захвата и анализа сетевых пакетов. Burp Suite предназначен для веб-тестирования, John the Ripper — для взлома паролей, Ghidra — для обратного инжиниринга.",
|
|
7
|
-
"6": "XSS означает Cross-Site Scripting — уязвимость, при которой злоумышленники внедряют вредоносные скрипты в веб-страницы, просматриваемые другими пользователями.",
|
|
8
|
-
"7": "Межсетевой экран фильтрует сетевой трафик на основе правил безопасности, блокируя несанкционированный доступ и разрешая легитимную связь. Он не шифрует, не сканирует на вирусы и не ускоряет соединения.",
|
|
9
|
-
"8": "Trojan маскируется под легитимное программное обеспечение, чтобы обманом заставить пользователей установить его. В отличие от червей, Trojan не самовоспроизводятся.",
|
|
10
|
-
"9": "HTTPS (HTTP Secure) использует TLS/SSL для шифрования веб-трафика, защищая данные от прослушивания и подделки. HTTP, FTP и SMTP не являются безопасными по умолчанию.",
|
|
11
|
-
"10": "Криптографический хеш — это односторонняя функция, которая создает дайджест фиксированного размера. Его невозможно обратить, в отличие от шифрования.",
|
|
12
|
-
"11": "Ghidra — это инструмент для обратного инжиниринга и анализа бинарных файлов, разработанный АНБ. Nmap сканирует порты, SQLMap тестирует SQL injection, Nikto сканирует веб-серверы.",
|
|
13
|
-
"12": "DNS Spoofing (отравление кэша) манипулирует ответами DNS, чтобы перенаправить жертв на серверы, контролируемые злоумышленником. Это отличается от Phishing, SQLi и атак методом перебора.",
|
|
14
|
-
"13": "SSH (Secure Shell) по умолчанию работает на порту 22. Порт 21 — это FTP, 80 — HTTP, 443 — HTTPS.",
|
|
15
|
-
"14": "Двухфакторная аутентификация (2FA) требует двух различных типов учетных данных — того, что вы знаете (пароль), и того, что у вас есть (телефон/токен) или кем вы являетесь (биометрия).",
|
|
16
|
-
"15": "Команда \"netstat -tulpn\" показывает все прослушиваемые порты TCP/UDP с информацией о процессах. \"ls -la\" выводит список файлов, \"chmod\" изменяет права доступа, \"cat /etc/passwd\" показывает учетные записи пользователей.",
|
|
17
|
-
"16": "Атака Man-in-the-Middle (MitM) перехватывает и потенциально изменяет связь между двумя сторонами, которые верят, что общаются друг с другом напрямую.",
|
|
18
|
-
"17": "SHA-256 — это криптографическая хеш-функция. AES-256 — это симметричный шифр, RSA-2048 — асимметричный шифр, а Diffie-Hellman — протокол обмена ключами.",
|
|
19
|
-
"18": "Принцип наименьших привилегий означает предоставление пользователям только минимальных прав, необходимых для выполнения их задач, что сокращает поверхность атаки.",
|
|
20
|
-
"19": "Nmap — это стандартный инструмент для сканирования портов. Wireshark захватывает пакеты, Metasploit — это фреймворк для эксплуатации уязвимостей, а Hashcat — взломщик паролей.",
|
|
21
|
-
"20": "Ransomware шифрует файлы жертвы и требует выкуп (обычно в криптовалюте) в обмен на ключ дешифрования.",
|
|
22
|
-
"21": "Симметричное шифрование использует один общий ключ как для шифрования, так и для расшифровки. Асимметричное шифрование использует пару ключей — открытый ключ для шифрования и закрытый ключ для расшифровки.",
|
|
23
|
-
"22": "Remote Code Execution (RCE) позволяет злоумышленнику выполнять произвольный код на целевом сервере, часто приводя к полной компрометации системы. CSRF, кликджекинг и открытый редирект имеют другие последствия.",
|
|
24
|
-
"23": "OWASP (Open Web Application Security Project) — это некоммерческая организация, которая публикует широко используемые стандарты и руководства по веб-безопасности, включая OWASP Top 10.",
|
|
25
|
-
"24": "Команда chmod изменяет права доступа к файлам в Linux. chown изменяет владельца, chgrp изменяет группу, а passwd изменяет пароли пользователей.",
|
|
26
|
-
"25": "Сертификат SSL/TLS — это цифровой документ, выданный доверенным центром сертификации, который подтверждает подлинность веб-сайта и обеспечивает зашифрованные соединения HTTPS.",
|
|
27
|
-
"26": "Phishing — это атака социальной инженерии, которая обманом заставляет людей раскрывать конфиденциальную информацию. Переполнение буфера, SQL injection и сканирование портов — это технические атаки.",
|
|
28
|
-
"27": "Команда grep ищет текстовые шаблоны в файлах с использованием регулярных выражений. Это один из наиболее часто используемых инструментов обработки текста в Linux.",
|
|
29
|
-
"28": "VPN (Virtual Private Network) создает зашифрованный туннель для интернет-трафика, защищая данные от перехвата и маскируя IP-адрес пользователя.",
|
|
30
|
-
"29": "CSRF (Cross-Site Request Forgery) заставляет браузер вошедшего в систему пользователя выполнять нежелательные действия на доверенном сайте, такие как изменение настроек учетной записи или перевод средств.",
|
|
31
|
-
"30": "Пароли должны храниться в виде криптографических хешей с солью. Открытый текст и Base64 небезопасны, а шифрование AES является обратимым при компрометации ключа. Хеширование с солью является односторонним и устойчивым к радужным таблицам."
|
|
32
|
-
}
|
|
@@ -1,332 +0,0 @@
|
|
|
1
|
-
[
|
|
2
|
-
{
|
|
3
|
-
"number": 1,
|
|
4
|
-
"text": "Какой алгоритм НЕ является симметричным шифром?",
|
|
5
|
-
"category": "Cryptography",
|
|
6
|
-
"options": {
|
|
7
|
-
"A": "AES",
|
|
8
|
-
"B": "RSA",
|
|
9
|
-
"C": "DES",
|
|
10
|
-
"D": "Blowfish"
|
|
11
|
-
}
|
|
12
|
-
},
|
|
13
|
-
{
|
|
14
|
-
"number": 2,
|
|
15
|
-
"text": "Что эксплуатирует SQL injection?",
|
|
16
|
-
"category": "Web Security",
|
|
17
|
-
"options": {
|
|
18
|
-
"A": "Переполнение буфера в веб-сервере",
|
|
19
|
-
"B": "Неочищенный пользовательский ввод в запросах к базе данных",
|
|
20
|
-
"C": "Слабые алгоритмы шифрования",
|
|
21
|
-
"D": "Неправильно сконфигурированные правила файрвола"
|
|
22
|
-
}
|
|
23
|
-
},
|
|
24
|
-
{
|
|
25
|
-
"number": 3,
|
|
26
|
-
"text": "Какой код состояния HTTP указывает на «Forbidden»?",
|
|
27
|
-
"category": "Web Security",
|
|
28
|
-
"options": {
|
|
29
|
-
"A": "401",
|
|
30
|
-
"B": "404",
|
|
31
|
-
"C": "403",
|
|
32
|
-
"D": "500"
|
|
33
|
-
}
|
|
34
|
-
},
|
|
35
|
-
{
|
|
36
|
-
"number": 4,
|
|
37
|
-
"text": "Какова основная цель nonce в криптографии?",
|
|
38
|
-
"category": "Cryptography",
|
|
39
|
-
"options": {
|
|
40
|
-
"A": "Шифровать хранящиеся данные",
|
|
41
|
-
"B": "Предотвращать атаки повтора",
|
|
42
|
-
"C": "Генерировать случайные пароли",
|
|
43
|
-
"D": "Сжимать данные перед шифрованием"
|
|
44
|
-
}
|
|
45
|
-
},
|
|
46
|
-
{
|
|
47
|
-
"number": 5,
|
|
48
|
-
"text": "Какой инструмент обычно используется для захвата сетевых пакетов?",
|
|
49
|
-
"category": "Network",
|
|
50
|
-
"options": {
|
|
51
|
-
"A": "Burp Suite",
|
|
52
|
-
"B": "Ghidra",
|
|
53
|
-
"C": "Wireshark",
|
|
54
|
-
"D": "John the Ripper"
|
|
55
|
-
}
|
|
56
|
-
},
|
|
57
|
-
{
|
|
58
|
-
"number": 6,
|
|
59
|
-
"text": "Как расшифровывается XSS в кибербезопасности?",
|
|
60
|
-
"category": "Web Security",
|
|
61
|
-
"options": {
|
|
62
|
-
"A": "Расширенная система безопасности",
|
|
63
|
-
"B": "Межсайтовый скриптинг",
|
|
64
|
-
"C": "XML Защищенный сокет",
|
|
65
|
-
"D": "Межсерверный обмен"
|
|
66
|
-
}
|
|
67
|
-
},
|
|
68
|
-
{
|
|
69
|
-
"number": 7,
|
|
70
|
-
"text": "Какова основная функция файрвола?",
|
|
71
|
-
"category": "Network",
|
|
72
|
-
"options": {
|
|
73
|
-
"A": "Шифровать сетевые данные",
|
|
74
|
-
"B": "Фильтровать сетевой трафик на основе правил безопасности",
|
|
75
|
-
"C": "Обнаруживать вирусы в файлах",
|
|
76
|
-
"D": "Ускорять интернет-соединение"
|
|
77
|
-
}
|
|
78
|
-
},
|
|
79
|
-
{
|
|
80
|
-
"number": 8,
|
|
81
|
-
"text": "Какой тип malware маскируется под легитимное программное обеспечение?",
|
|
82
|
-
"category": "Malware",
|
|
83
|
-
"options": {
|
|
84
|
-
"A": "Worm",
|
|
85
|
-
"B": "Ransomware",
|
|
86
|
-
"C": "Trojan",
|
|
87
|
-
"D": "Adware"
|
|
88
|
-
}
|
|
89
|
-
},
|
|
90
|
-
{
|
|
91
|
-
"number": 9,
|
|
92
|
-
"text": "Вопрос: Какой протокол обеспечивает безопасное соединение в интернете?",
|
|
93
|
-
"category": "Network",
|
|
94
|
-
"options": {
|
|
95
|
-
"A": "HTTP",
|
|
96
|
-
"B": "FTP",
|
|
97
|
-
"C": "HTTPS",
|
|
98
|
-
"D": "SMTP"
|
|
99
|
-
}
|
|
100
|
-
},
|
|
101
|
-
{
|
|
102
|
-
"number": 10,
|
|
103
|
-
"text": "Что такое криптографический хеш?",
|
|
104
|
-
"category": "Cryptography",
|
|
105
|
-
"options": {
|
|
106
|
-
"A": "Обратимый ключ шифрования",
|
|
107
|
-
"B": "Односторонняя функция, производящая дайджест фиксированного размера",
|
|
108
|
-
"C": "Протокол аутентификации",
|
|
109
|
-
"D": "Тип цифровой подписи"
|
|
110
|
-
}
|
|
111
|
-
},
|
|
112
|
-
{
|
|
113
|
-
"number": 11,
|
|
114
|
-
"text": "Какой инструмент используется для бинарного анализа?",
|
|
115
|
-
"category": "Reverse Engineering",
|
|
116
|
-
"options": {
|
|
117
|
-
"A": "Nmap",
|
|
118
|
-
"B": "SQLMap",
|
|
119
|
-
"C": "Ghidra",
|
|
120
|
-
"D": "Nikto"
|
|
121
|
-
}
|
|
122
|
-
},
|
|
123
|
-
{
|
|
124
|
-
"number": 12,
|
|
125
|
-
"text": "Какая атака манипулирует DNS-запросами для перенаправления трафика?",
|
|
126
|
-
"category": "Network",
|
|
127
|
-
"options": {
|
|
128
|
-
"A": "Фишинг",
|
|
129
|
-
"B": "DNS Spoofing",
|
|
130
|
-
"C": "SQL Injection",
|
|
131
|
-
"D": "Brute Force"
|
|
132
|
-
}
|
|
133
|
-
},
|
|
134
|
-
{
|
|
135
|
-
"number": 13,
|
|
136
|
-
"text": "Какой стандартный порт для SSH?",
|
|
137
|
-
"category": "Network",
|
|
138
|
-
"options": {
|
|
139
|
-
"A": "21",
|
|
140
|
-
"B": "22",
|
|
141
|
-
"C": "80",
|
|
142
|
-
"D": "443"
|
|
143
|
-
}
|
|
144
|
-
},
|
|
145
|
-
{
|
|
146
|
-
"number": 14,
|
|
147
|
-
"text": "Что такое двухфакторная аутентификация (2FA)?",
|
|
148
|
-
"category": "Authentication",
|
|
149
|
-
"options": {
|
|
150
|
-
"A": "Использование двух разных паролей",
|
|
151
|
-
"B": "Проверка личности с помощью двух различных типов учетных данных",
|
|
152
|
-
"C": "Двойное шифрование данных",
|
|
153
|
-
"D": "Подключение через две сети"
|
|
154
|
-
}
|
|
155
|
-
},
|
|
156
|
-
{
|
|
157
|
-
"number": 15,
|
|
158
|
-
"text": "Какая команда Linux показывает открытые порты в системе?",
|
|
159
|
-
"category": "Linux",
|
|
160
|
-
"options": {
|
|
161
|
-
"A": "ls -la",
|
|
162
|
-
"B": "netstat -tulpn",
|
|
163
|
-
"C": "chmod 777",
|
|
164
|
-
"D": "cat /etc/passwd"
|
|
165
|
-
}
|
|
166
|
-
},
|
|
167
|
-
{
|
|
168
|
-
"number": 16,
|
|
169
|
-
"text": "Что такое атака Man-in-the-Middle (MitM)?",
|
|
170
|
-
"category": "Network",
|
|
171
|
-
"options": {
|
|
172
|
-
"A": "Доступ к серверу без авторизации",
|
|
173
|
-
"B": "Подбор паролей brute force",
|
|
174
|
-
"C": "Отправка множества запросов для перегрузки сервера",
|
|
175
|
-
"D": "Перехват и изменение коммуникаций между двумя сторонами"
|
|
176
|
-
}
|
|
177
|
-
},
|
|
178
|
-
{
|
|
179
|
-
"number": 17,
|
|
180
|
-
"text": "Какой из перечисленных является алгоритмом хеширования?",
|
|
181
|
-
"category": "Cryptography",
|
|
182
|
-
"options": {
|
|
183
|
-
"A": "AES-256",
|
|
184
|
-
"B": "Diffie-Hellman",
|
|
185
|
-
"C": "RSA-2048",
|
|
186
|
-
"D": "SHA-256"
|
|
187
|
-
}
|
|
188
|
-
},
|
|
189
|
-
{
|
|
190
|
-
"number": 18,
|
|
191
|
-
"text": "Что такое принцип наименьших привилегий?",
|
|
192
|
-
"category": "Security",
|
|
193
|
-
"options": {
|
|
194
|
-
"A": "Предоставить root доступ всем пользователям",
|
|
195
|
-
"B": "Использовать максимально короткий пароль",
|
|
196
|
-
"C": "Предоставлять только те разрешения, которые необходимы для выполнения задачи",
|
|
197
|
-
"D": "Отключить все firewalls"
|
|
198
|
-
}
|
|
199
|
-
},
|
|
200
|
-
{
|
|
201
|
-
"number": 19,
|
|
202
|
-
"text": "Какой инструмент часто используется для сканирования портов?",
|
|
203
|
-
"category": "Network",
|
|
204
|
-
"options": {
|
|
205
|
-
"A": "Wireshark",
|
|
206
|
-
"B": "Metasploit",
|
|
207
|
-
"C": "Nmap",
|
|
208
|
-
"D": "Hashcat"
|
|
209
|
-
}
|
|
210
|
-
},
|
|
211
|
-
{
|
|
212
|
-
"number": 20,
|
|
213
|
-
"text": "Что такое ransomware?",
|
|
214
|
-
"category": "Malware",
|
|
215
|
-
"options": {
|
|
216
|
-
"A": "Программное обеспечение, которое показывает нежелательную рекламу",
|
|
217
|
-
"B": "Программное обеспечение, которое шифрует файлы и требует выкуп для дешифровки",
|
|
218
|
-
"C": "Программное обеспечение, которое записывает нажатия клавиш",
|
|
219
|
-
"D": "Программное обеспечение, которое реплицируется по сетям"
|
|
220
|
-
}
|
|
221
|
-
},
|
|
222
|
-
{
|
|
223
|
-
"number": 21,
|
|
224
|
-
"text": "В чем разница между симметричным и асимметричным шифрованием?",
|
|
225
|
-
"category": "Cryptography",
|
|
226
|
-
"options": {
|
|
227
|
-
"A": "Симметричное использует один и тот же ключ для шифрования и дешифрования; асимметричное использует два разных ключа",
|
|
228
|
-
"B": "Симметричное медленнее, чем асимметричное",
|
|
229
|
-
"C": "Асимметричное работает только с небольшими файлами",
|
|
230
|
-
"D": "Нет существенной разницы"
|
|
231
|
-
}
|
|
232
|
-
},
|
|
233
|
-
{
|
|
234
|
-
"number": 22,
|
|
235
|
-
"text": "Какая уязвимость позволяет выполнение произвольного кода на веб-сервере?",
|
|
236
|
-
"category": "Web Security",
|
|
237
|
-
"options": {
|
|
238
|
-
"A": "CSRF",
|
|
239
|
-
"B": "Open Redirect",
|
|
240
|
-
"C": "Clickjacking",
|
|
241
|
-
"D": "Remote Code Execution (RCE)"
|
|
242
|
-
}
|
|
243
|
-
},
|
|
244
|
-
{
|
|
245
|
-
"number": 23,
|
|
246
|
-
"text": "Что такое OWASP?",
|
|
247
|
-
"category": "Security",
|
|
248
|
-
"options": {
|
|
249
|
-
"A": "Операционная система безопасности",
|
|
250
|
-
"B": "Тип межсетевого экрана",
|
|
251
|
-
"C": "Организация, которая публикует стандарты и руководства по веб-безопасности",
|
|
252
|
-
"D": "Язык программирования для безопасности"
|
|
253
|
-
}
|
|
254
|
-
},
|
|
255
|
-
{
|
|
256
|
-
"number": 24,
|
|
257
|
-
"text": "Какая команда Linux изменяет права доступа к файлам?",
|
|
258
|
-
"category": "Linux",
|
|
259
|
-
"options": {
|
|
260
|
-
"A": "chown",
|
|
261
|
-
"B": "chmod",
|
|
262
|
-
"C": "chgrp",
|
|
263
|
-
"D": "passwd"
|
|
264
|
-
}
|
|
265
|
-
},
|
|
266
|
-
{
|
|
267
|
-
"number": 25,
|
|
268
|
-
"text": "Что такое SSL/TLS-сертификат?",
|
|
269
|
-
"category": "Cryptography",
|
|
270
|
-
"options": {
|
|
271
|
-
"A": "Цифровой документ, который подтверждает подлинность веб-сайта",
|
|
272
|
-
"B": "Файл, содержащий вредоносное ПО",
|
|
273
|
-
"C": "Закрытый ключ для SSH",
|
|
274
|
-
"D": "Тип зашифрованной базы данных"
|
|
275
|
-
}
|
|
276
|
-
},
|
|
277
|
-
{
|
|
278
|
-
"number": 26,
|
|
279
|
-
"text": "Какое из следующих является атакой социальной инженерии?",
|
|
280
|
-
"category": "Security",
|
|
281
|
-
"options": {
|
|
282
|
-
"A": "Buffer overflow",
|
|
283
|
-
"B": "Фишинг",
|
|
284
|
-
"C": "SQL Injection",
|
|
285
|
-
"D": "Сканирование портов"
|
|
286
|
-
}
|
|
287
|
-
},
|
|
288
|
-
{
|
|
289
|
-
"number": 27,
|
|
290
|
-
"text": "What does the Linux command \"grep\" do?",
|
|
291
|
-
"category": "Linux",
|
|
292
|
-
"options": {
|
|
293
|
-
"A": "Compresses files",
|
|
294
|
-
"B": "Configures the network",
|
|
295
|
-
"C": "Shows active processes",
|
|
296
|
-
"D": "Searches for text patterns in files"
|
|
297
|
-
}
|
|
298
|
-
},
|
|
299
|
-
{
|
|
300
|
-
"number": 28,
|
|
301
|
-
"text": "Что такое VPN?",
|
|
302
|
-
"category": "Network",
|
|
303
|
-
"options": {
|
|
304
|
-
"A": "Тип вируса",
|
|
305
|
-
"B": "Протокол передачи файлов",
|
|
306
|
-
"C": "Виртуальная частная сеть, которая шифрует интернет-трафик",
|
|
307
|
-
"D": "Сканер уязвимостей"
|
|
308
|
-
}
|
|
309
|
-
},
|
|
310
|
-
{
|
|
311
|
-
"number": 29,
|
|
312
|
-
"text": "Что такое CSRF (Cross-Site Request Forgery)?",
|
|
313
|
-
"category": "Web Security",
|
|
314
|
-
"options": {
|
|
315
|
-
"A": "Атака, которая заставляет браузер пользователя выполнять несанкционированные действия",
|
|
316
|
-
"B": "Метод шифрования данных",
|
|
317
|
-
"C": "Тип сетевого сканера",
|
|
318
|
-
"D": "Техника сжатия файлов"
|
|
319
|
-
}
|
|
320
|
-
},
|
|
321
|
-
{
|
|
322
|
-
"number": 30,
|
|
323
|
-
"text": "Какова лучшая практика для хранения паролей в базе данных?",
|
|
324
|
-
"category": "Security",
|
|
325
|
-
"options": {
|
|
326
|
-
"A": "Открытый текст",
|
|
327
|
-
"B": "Хэшированные с солью",
|
|
328
|
-
"C": "Зашифрованные с помощью AES",
|
|
329
|
-
"D": "Закодированные в Base64"
|
|
330
|
-
}
|
|
331
|
-
}
|
|
332
|
-
]
|