{"id":25716193,"url":"https://github.com/haletran/42_cybersecurity-piscine","last_synced_at":"2025-10-14T02:02:59.601Z","repository":{"id":275625916,"uuid":"926610405","full_name":"Haletran/42_Cybersecurity-Piscine","owner":"Haletran","description":"Every days of the 42 Cybersecurity Piscine","archived":false,"fork":false,"pushed_at":"2025-02-13T17:34:02.000Z","size":33,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-09-01T00:58:48.606Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Haletran.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-02-03T15:05:49.000Z","updated_at":"2025-02-13T17:34:06.000Z","dependencies_parsed_at":"2025-02-03T18:25:46.376Z","dependency_job_id":"3683ac70-fd1c-4329-b5d3-4974930818dd","html_url":"https://github.com/Haletran/42_Cybersecurity-Piscine","commit_stats":null,"previous_names":["haletran/42_cybersecurity-piscine"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Haletran/42_Cybersecurity-Piscine","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Haletran%2F42_Cybersecurity-Piscine","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Haletran%2F42_Cybersecurity-Piscine/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Haletran%2F42_Cybersecurity-Piscine/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Haletran%2F42_Cybersecurity-Piscine/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Haletran","download_url":"https://codeload.github.com/Haletran/42_Cybersecurity-Piscine/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Haletran%2F42_Cybersecurity-Piscine/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279017542,"owners_count":26086113,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-14T02:00:06.444Z","response_time":60,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-02-25T14:51:39.663Z","updated_at":"2025-10-14T02:02:59.560Z","avatar_url":"https://github.com/Haletran.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 42_Cybersecurity-Piscine\n\n\n## GO language\n\n```bash\ngo mod init \u003cmodule_name\u003e\ngo run .\n```\n\n```go\n// basic hello world in go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n    fmt.Println(\"Hello, World!\")\n}\n```\n## Day00\n\nThe `spider` program allow you to extract all the images from a website, recursively, by\nproviding a url as a parameter.\n\nUseful packages for `spider` : \n- `net/http`\n- `colly`\n- `goquery`\n\n\n```./spider.go:39:14: more than one character in rune literal```\n-\u003e use double quotes instead of single quotes for strings\n\n## Day01\n\n- The executable must be named ft_otp\n- Your program must take arguments.\n  1. -g: The program receives as argument a hexadecimal key of at least 64 char-\nacters. The program stores this key safely in a file called ft_otp.key, which\nis encrypted.\n    2. -k: The program generates a new temporary password based on the key given\nas argument and prints it on the standard output.\n- Your program must use the HOTP algorithm (RFC 4226).\n- The generated one-time password must be random and must always contain the\nsame format, i.e. 6 digits.\n\n## Day02\n\nSetup a `.onion website` using the Tor network.\n\n```bash\n# access ssh on the server\nssh -i ~/.ssh/ft-onion root@172.17.0.2 -p 4242\n```\n\n[Host your own Tor darkweb .onion site for free with NGINX](https://www.youtube.com/watch?v=6BV-3yWzWcI\u0026t=10s)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhaletran%2F42_cybersecurity-piscine","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhaletran%2F42_cybersecurity-piscine","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhaletran%2F42_cybersecurity-piscine/lists"}