{"id":36490849,"url":"https://github.com/spacepatcher/softrace","last_synced_at":"2026-01-12T01:55:43.163Z","repository":{"id":57570540,"uuid":"163263462","full_name":"spacepatcher/softrace","owner":"spacepatcher","description":"Lightweight and fast NSRL RDS storage","archived":false,"fork":false,"pushed_at":"2021-03-30T19:19:32.000Z","size":12,"stargazers_count":1,"open_issues_count":1,"forks_count":2,"subscribers_count":1,"default_branch":"develop","last_synced_at":"2024-06-20T00:36:04.049Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/spacepatcher.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-12-27T07:38:18.000Z","updated_at":"2024-06-20T00:36:04.050Z","dependencies_parsed_at":"2022-08-28T18:20:44.235Z","dependency_job_id":null,"html_url":"https://github.com/spacepatcher/softrace","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/spacepatcher/softrace","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spacepatcher%2Fsoftrace","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spacepatcher%2Fsoftrace/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spacepatcher%2Fsoftrace/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spacepatcher%2Fsoftrace/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/spacepatcher","download_url":"https://codeload.github.com/spacepatcher/softrace/tar.gz/refs/heads/develop","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spacepatcher%2Fsoftrace/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28331320,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-12T00:36:25.062Z","status":"ssl_error","status_checked_at":"2026-01-12T00:36:15.229Z","response_time":60,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":"2026-01-12T01:55:42.549Z","updated_at":"2026-01-12T01:55:43.158Z","avatar_url":"https://github.com/spacepatcher.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Softrace \n\nSoftrace is a simple Golang application for storing NIST National Software Reference Library Reference Data Set (\u003ca href=\"https://www.nist.gov/software-quality-group/national-software-reference-library-nsrl\" target=\"_blank\"\u003eNSRL RDS\u003c/a\u003e). Softrace is based on Bolt database, so it is fast and tiny.\n\nThe application is able to process md5 and sha1 hash lookup searches.\n\nHash lookup example:\n```\ncurl -XGET http://localhost:8001/lookup/6d62c33de5e65af81ae52a529ed2f385\n```\n\nSoftrace response:\n```\n{\n    \"sha1\":\"00012b50bc346b4b3cecf13cdbf734ad03258322\",\n    \"md5\":\"6d62c33de5e65af81ae52a529ed2f385\",\n    \"crc32\":\"a681c4f7\",\n    \"file_name\":\"APPLYStrings.xml\",\n    \"file_size\":\"6820\",\n    \"product_name\":\"Microsoft Office 2000 Standard\",\n    \"product_version\":\"2000\",\n    \"application_type\":\"Operating System\",\n    \"os_name\":\"Windows Media Center 2005\",\n    \"os_version\":\"2005\"\n}\n```\n\n### Create database file\n\nTo create the required database file you first need to download archive `Modern RDS Minimal` from Current RDS Hash Sets page https://www.nist.gov/itl/ssd/software-quality-group/national-software-reference-library-nsrl/nsrl-download/current-rds. \n\nYou should unpack the downloaded archive into `data/nsrl_rds/rds_modern/` with names of the extracted files:\n```\nNSRLFile.txt\nNSRLMfg.txt\nNSRLOS.txt\nNSRLProd.txt\n```\n\nBuild docker image `insert_bolt` for creating Bolt database with NSRL data set:\n```\ndocker build -t insert_bolt -f docker/Dockerfile.insert .\n```\n\nTo avoid the problem with access rights to Docker volume, set the correct access rights:\n```\nchown -R 1000:1000 data/\n```\n\nCreate Bolt database file with `insert_bolt` container:\n```\ndocker run -ti --name insert_bolt -v `pwd`/data:/go/src/github.com/spacepatcher/softrace/data:delegated insert_bolt\n```\n\nCreating a database file which is located in `data/bolt/bolt.db` takes several hours (in some cases, with low R/W it will take more than a day, so be patient). Total size of the database file by the end of the process is about 38 gigabytes.\n\n### Start API service\n\nTo start API service run:\n```\ndocker-compose up\n```\n\nBy default the API service is available on `127.0.0.1:8001`.\n\n### Update data\n\nTo update the database file data, you need to put new exemplars of files downloaded from Current RDS Hash Sets page in `data/nsrl_rds/rds_modern/`. After that, you should remove the existing database file and generate a new one.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fspacepatcher%2Fsoftrace","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fspacepatcher%2Fsoftrace","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fspacepatcher%2Fsoftrace/lists"}