{"id":13740063,"url":"https://github.com/linklayer/reversegear","last_synced_at":"2025-05-08T19:35:30.252Z","repository":{"id":74552772,"uuid":"101306662","full_name":"linklayer/reversegear","owner":"linklayer","description":"Offline Reverse Engineering Tools for Automotive Networks","archived":false,"fork":false,"pushed_at":"2023-09-08T02:54:54.000Z","size":20,"stargazers_count":46,"open_issues_count":1,"forks_count":11,"subscribers_count":8,"default_branch":"master","last_synced_at":"2024-11-14T08:55:10.507Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/linklayer.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2017-08-24T14:54:10.000Z","updated_at":"2024-10-20T04:37:14.000Z","dependencies_parsed_at":"2024-01-07T18:09:04.291Z","dependency_job_id":null,"html_url":"https://github.com/linklayer/reversegear","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/linklayer%2Freversegear","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/linklayer%2Freversegear/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/linklayer%2Freversegear/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/linklayer%2Freversegear/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/linklayer","download_url":"https://codeload.github.com/linklayer/reversegear/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224758272,"owners_count":17364974,"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","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":"2024-08-03T04:00:41.980Z","updated_at":"2024-11-15T09:31:00.240Z","avatar_url":"https://github.com/linklayer.png","language":"Python","readme":"=======================================================================\nReverseGear: Offline Reverse Engineering Tools for Automotive Networks\n=======================================================================\n\nInstallation\n------------\n\nReverseGear can be installed with pip: ``pip3 install reversegear``.\n\nRationale\n---------\n\nA variety of techniques exist for reverse engineering components by analyzing vehicle logs. ReverseGear aims to provide tools for automating these techniques. It is only intended for working offline, using logs of network traffic. For an online tool, see `caringcaraboo`_.\n\n.. _`caringcaraboo`: https://github.com/CaringCaribou/caringcaribou\n\nInputs\n------\nCurrently, only :code:`candump` format logs files are supported. To generate a log using :code:`candump`, the :code:`-l` (or :code:`-L`) flag **must** be used.\n\nFor example, to log from the can0 interface:\n\n:code:`candump -l can0`\n\nCommands\n--------\n\nReverseGear uses a number of subcommands. In general, you can get help with :code:`reversegear --help`, and :code:`reversegear [subcommand] --help`.\n\nids\n...\n\nSubcommand for generating arbitration ID statistics.\n\nUsage: :code:`reversegear uds [-h] tx_id rx_id inputs [inputs ...]`\n\nExample: :code:`reversegear ids log.txt`\n\nuds\n...\n\nSubcommand for decoding Unified Diagnostic Services (ISO14229) traffic. Requires the arbitration ID transmitted by the client/scan tool (tx_id) and the arbitration ID received by the client/scan tool (rx_id).\n\nUsage: :code:`reversegear uds [-h] tx_id rx_id inputs [inputs ...]`\n\nExample: :code:`reversegear uds 0x7F1 0x7F9 log.txt`\n\niddiff\n......\n\nSubcommand for displaying unique arbitration IDs in two files.\n\nUsage: :code:`reversegear iddiff [-h] a b`\n\nExample :code:`reversegear iddiff log_one.txt log_two.txt`\n\n","funding_links":[],"categories":["Hacking and Reverse Engineering tools"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flinklayer%2Freversegear","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flinklayer%2Freversegear","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flinklayer%2Freversegear/lists"}