{"arch":"arm64","build_provenance":null,"call_graph":{"calls":{"4294971696":[{"is_tail_call":false,"symbol":"strdup","target_va":4294974268},{"is_tail_call":false,"symbol":"ldns_rr_get_type","target_va":4294974028},{"is_tail_call":false,"symbol":"ldns_key_rr2ds","target_va":4294973968},{"is_tail_call":false,"symbol":"strerror","target_va":4294974280},{"is_tail_call":false,"symbol":"usage","target_va":4294972652},{"is_tail_call":false,"symbol":"ldns_rr_dnskey_flags","target_va":4294974004},{"is_tail_call":false,"symbol":"free","target_va":4294974196},{"is_tail_call":false,"symbol":"fprintf","target_va":4294974184},{"is_tail_call":false,"symbol":"fclose","target_va":4294974160},{"is_tail_call":false,"symbol":"__stderrp","target_va":4294974112},{"is_tail_call":false,"symbol":"fopen$DARWIN_EXTSN","target_va":4294974172},{"is_tail_call":false,"symbol":"fwrite","target_va":4294974208},{"is_tail_call":false,"symbol":"abort","target_va":4294974136},{"is_tail_call":false,"symbol":"exit","target_va":4294974148},{"is_tail_call":false,"symbol":"__stdoutp","target_va":4294974124},{"is_tail_call":false,"symbol":"__maskrune","target_va":4294974100},{"is_tail_call":false,"symbol":"strlen","target_va":4294974292},{"is_tail_call":false,"symbol":"malloc","target_va":4294974232},{"is_tail_call":false,"symbol":"_DefaultRuneLocale","target_va":4294974076},{"is_tail_call":false,"symbol":"snprintf","target_va":4294974256},{"is_tail_call":false,"symbol":"ldns_calc_keytag","target_va":4294974220},{"is_tail_call":false,"symbol":"ldns_rr_get_type","target_va":4294974028},{"is_tail_call":false,"symbol":"ldns_calc_keytag","target_va":4294974220},{"is_tail_call":false,"symbol":"ldns_rr_free","target_va":4294974016},{"is_tail_call":false,"symbol":"_DefaultRuneLocale","target_va":4294974076},{"is_tail_call":false,"symbol":"ldns_rr_new_frm_fp","target_va":4294974040},{"is_tail_call":false,"symbol":"fopen$DARWIN_EXTSN","target_va":4294974172},{"is_tail_call":false,"symbol":"fopen$DARWIN_EXTSN","target_va":4294974172},{"is_tail_call":false,"symbol":"ldns_rr_owner","target_va":4294974052},{"is_tail_call":false,"symbol":"ldns_rr_owner","target_va":4294974052},{"is_tail_call":false,"symbol":"ldns_rr_free","target_va":4294974016},{"is_tail_call":false,"symbol":"ldns_rr_owner","target_va":4294974052},{"is_tail_call":false,"symbol":"ldns_rr_dnskey_flags","target_va":4294974004},{"is_tail_call":false,"symbol":"__error","target_va":4294974088},{"is_tail_call":false,"symbol":"ldns_rr_new_frm_fp","target_va":4294974040},{"is_tail_call":false,"symbol":"ldns_rr_print","target_va":4294974064},{"is_tail_call":false,"symbol":"fopen$DARWIN_EXTSN","target_va":4294974172},{"is_tail_call":false,"symbol":"ldns_rr_owner","target_va":4294974052},{"is_tail_call":false,"symbol":"ldns_key_rr2ds","target_va":4294973968},{"is_tail_call":false,"symbol":"strerror","target_va":4294974280}],"4294972652":[{"is_tail_call":false,"symbol":"ldns_rr_new_frm_fp","target_va":4294974040},{"is_tail_call":false,"symbol":"ldns_rr_print","target_va":4294974064},{"is_tail_call":false,"symbol":"ldns_rr_print","target_va":4294974064},{"is_tail_call":false,"symbol":"ldns_rr_print","target_va":4294974064},{"is_tail_call":false,"symbol":"ldns_rr_print","target_va":4294974064},{"is_tail_call":false,"symbol":"ldns_rr_print","target_va":4294974064},{"is_tail_call":false,"symbol":"ldns_rr_print","target_va":4294974064},{"is_tail_call":false,"symbol":"ldns_rr_print","target_va":4294974064},{"is_tail_call":false,"symbol":"ldns_rr_print","target_va":4294974064},{"is_tail_call":false,"symbol":"ldns_rr_print","target_va":4294974064},{"is_tail_call":false,"symbol":"ldns_rr_print","target_va":4294974064},{"is_tail_call":true,"symbol":"ldns_rr_print","target_va":4294974064}],"4294972964":[{"is_tail_call":false,"symbol":"ldns_rdf2native_int16","target_va":4294973980},{"is_tail_call":false,"symbol":"memchr","target_va":4294974244},{"is_tail_call":false,"symbol":"ldns_rdf2native_int16","target_va":4294973980},{"is_tail_call":false,"symbol":"ldns_rdf2native_int16","target_va":4294973980}]},"data_xrefs":{"by_data":{"4294971392":[4294971696],"4294971432":[4294971696],"4294971440":[4294972652],"4294974304":[4294971696],"4294974306":[4294971696],"4294974345":[4294971696],"4294974389":[4294971696],"4294974419":[4294971696],"4294974436":[4294971696],"4294974438":[4294971696],"4294974461":[4294971696],"4294974476":[4294972652],"4294974502":[4294972652],"4294974550":[4294972652],"4294974589":[4294972652],"4294974612":[4294972652],"4294974675":[4294972652],"4294974685":[4294972652],"4294974743":[4294972652],"4294974799":[4294972652],"4294974851":[4294972652],"4294974883":[4294972652],"4294974917":[4294972652],"4294974951":[4294973608],"4294975016":[4294971696],"4294975052":[4294972964],"4294983680":[4294971696],"4294983784":[4294972964],"4294983808":[4294971696],"4294983816":[4294971696]},"by_function":{"4294971696":[{"data_va":4294974304,"insn_va":4294972004,"kind":"CString","value":null},{"data_va":4294983808,"insn_va":4294972020,"kind":"Global","value":null},{"data_va":4294983680,"insn_va":4294972024,"kind":"Global","value":null},{"data_va":4294974306,"insn_va":4294972048,"kind":"CString","value":"Failed to open public key file %s: %s\n"},{"data_va":4294983808,"insn_va":4294972060,"kind":"Global","value":null},{"data_va":4294983680,"insn_va":4294972064,"kind":"Global","value":null},{"data_va":4294975016,"insn_va":4294972240,"kind":"Global","value":null},{"data_va":4294974419,"insn_va":4294972328,"kind":"CString","value":"K%s+%03u+%05u.ds"},{"data_va":4294983816,"insn_va":4294972344,"kind":"Global","value":null},{"data_va":4294983680,"insn_va":4294972348,"kind":"Global","value":null},{"data_va":4294974436,"insn_va":4294972372,"kind":"CString","value":null},{"data_va":4294983816,"insn_va":4294972408,"kind":"Global","value":null},{"data_va":4294983680,"insn_va":4294972412,"kind":"Global","value":null},{"data_va":4294974461,"insn_va":4294972440,"kind":"CString","value":"K%s+%03u+%05u\n"},{"data_va":4294983808,"insn_va":4294972524,"kind":"Global","value":null},{"data_va":4294983680,"insn_va":4294972528,"kind":"Global","value":null},{"data_va":4294974345,"insn_va":4294972544,"kind":"CString","value":"Could not read public key from file %s: %s\n"},{"data_va":4294983808,"insn_va":4294972564,"kind":"Global","value":null},{"data_va":4294983680,"insn_va":4294972568,"kind":"Global","value":null},{"data_va":4294974389,"insn_va":4294972576,"kind":"CString","value":"Conversion to a DS RR failed\n"},{"data_va":4294971432,"insn_va":4294972592,"kind":"Global","value":null},{"data_va":4294983808,"insn_va":4294972616,"kind":"Global","value":null},{"data_va":4294983680,"insn_va":4294972620,"kind":"Global","value":null},{"data_va":4294971392,"insn_va":4294972628,"kind":"Global","value":null},{"data_va":4294974438,"insn_va":4294972644,"kind":"CString","value":"Unable to open %s: %s\n"}],"4294972652":[{"data_va":4294974476,"insn_va":4294972680,"kind":"CString","value":"%s [-fn] [-1|-2] keyfile\n"},{"data_va":4294974502,"insn_va":4294972692,"kind":"CString","value":"  Generate a DS RR from the DNSKEYS in keyfile\n"},{"data_va":4294974550,"insn_va":4294972716,"kind":"CString","value":"  The following file will be created: "},{"data_va":4294974589,"insn_va":4294972740,"kind":"CString","value":"K<name>+<alg>+<id>.ds\n"},{"data_va":4294974612,"insn_va":4294972764,"kind":"CString","value":"  The base name (K<name>+<alg>+<id> will be printed to stdout\n"},{"data_va":4294974675,"insn_va":4294972788,"kind":"CString","value":"Options:\n"},{"data_va":4294974685,"insn_va":4294972812,"kind":"CString","value":"  -f: ignore SEP flag (i.e. make DS records for any key)\n"},{"data_va":4294974743,"insn_va":4294972836,"kind":"CString","value":"  -n: do not write DS records to file(s) but to stdout\n"},{"data_va":4294974799,"insn_va":4294972860,"kind":"CString","value":"  (default) use similar hash to the key algorithm.\n"},{"data_va":4294974851,"insn_va":4294972884,"kind":"CString","value":"  -1: use SHA1 for the DS hash\n"},{"data_va":4294974883,"insn_va":4294972908,"kind":"CString","value":"  -2: use SHA256 for the DS hash\n"},{"data_va":4294974917,"insn_va":4294972932,"kind":"CString","value":"  -4: use SHA384 for the DS hash\n"},{"data_va":4294971440,"insn_va":4294972956,"kind":"Global","value":null}],"4294972964":[{"data_va":4294983784,"insn_va":4294973020,"kind":"Global","value":null},{"data_va":4294975052,"insn_va":4294973028,"kind":"Global","value":null}],"4294973608":[{"data_va":4294974951,"insn_va":4294973640,"kind":"CString","value":"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"}]}},"noreturn_vas":[],"symbols":{"4294971696":"main","4294972652":"usage","4294972964":"ldns_b64_pton","4294973608":"ldns_b64_ntop"}},"capabilities":[],"code_signature":{"code_directory":{"cdhash":"86446a71612f56c7358f639ec640834d8685a3ab1be9afd1f33336e4faf7092b","flag_names":["CS_ADHOC"],"flags":2,"hash_type":2,"identifier":"ldns-key2ds-55554944bed051d32d7e3abeab0f5531ea54b58a","platform":0,"team_id":null},"signing_status":"AdHoc"},"cpp_hierarchy":null,"data_in_code":[],"dna":{"hashes":{"classhash":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","cpp_classhash":null,"entitlementhash":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","frameworkhash":"8bcb91b9a1e3cafd96a12cf64ed3b1dab21f2042ab901b259d16a4ee1c3ea64d","imphash":"18d9fe66a78e0b743170ebf1cc3bd3c17e82ac517e920542edf467442f130f52","sha256_text":"39c72e87a697ba723737193a32db694a8168be39eb044c8ef5899e71fd5cf644","symbolhash":"18d9fe66a78e0b743170ebf1cc3bd3c17e82ac517e920542edf467442f130f52"},"sets":{"apis_called":["_DefaultRuneLocale","__error","__maskrune","__stderrp","__stdoutp","abort","exit","fclose","fopen$DARWIN_EXTSN","fprintf","free","fwrite","ldns_calc_keytag","ldns_key_rr2ds","ldns_rdf2native_int16","ldns_rr_dnskey_flags","ldns_rr_free","ldns_rr_get_type","ldns_rr_new_frm_fp","ldns_rr_owner","ldns_rr_print","malloc","memchr","snprintf","strdup","strerror","strlen","usage"],"bundle_ids":[],"cpp_classes":[],"entitlements":[],"frameworks":["libldns.3.dylib","libcrypto.3.dylib","libSystem.B.dylib"],"iokit_constants":[],"objc_classes":[],"private_frameworks":[],"protocols":[],"signing_status":"Ad-Hoc","static_libs":["FLAC-1.5.0","ldns-1.9.0"],"swift_protocol_names":[],"swift_type_names":[],"xpc_services":[]},"vector":{"bundle_ids":0,"cap_analytics":0,"cap_hardware":0,"cap_ipc":0,"cap_keychain":0,"cap_location":0,"cap_network":0,"cap_security":0,"cap_storage":0,"cap_system":0,"cpp_classes":0,"cpp_vtable_entries":0,"entitlements_total":0,"file_paths":0,"frameworks_private":0,"frameworks_total":3,"iokit_constants":0,"library_functions":2,"nlist_functions":4,"objc_classes":0,"objc_ivars":0,"objc_methods":0,"objc_protocols":0,"section_count":6,"size_log2":15.7000065,"static_lib_count":2,"swift_conformances":0,"swift_protocols":0,"swift_types":0,"telemetry_strings":0,"text_ratio":0.042681094,"url_endpoints":0,"xpc_provides":0}},"dwarf_metadata":null,"entitlements":{"entries":{},"raw_plist":null},"exports":[{"address":0,"is_reexport":false,"is_thread_local":false,"is_weak":false,"name":"_mh_execute_header"},{"address":6312,"is_reexport":false,"is_thread_local":false,"is_weak":false,"name":"ldns_b64_ntop"},{"address":5668,"is_reexport":false,"is_thread_local":false,"is_weak":false,"name":"ldns_b64_pton"},{"address":4400,"is_reexport":false,"is_thread_local":false,"is_weak":false,"name":"main"}],"fileset_entries":[],"fingerprint":{"analyzed_at":"2026-04-09T09:01:48Z","available_arches":["arm64"],"binary_type":"executable","bundle_id":null,"cdhash":"86446a71612f56c7358f639ec640834d8685a3ab1be9afd1f33336e4faf7092b","file_modified":"2026-04-09T09:01:48Z","file_size":53232,"is_arm64e":false,"min_os":"26.0.0","name":"ldns-key2ds","platform":"macOS","sdk":"26.1.0","sha256":"d7b14feda686578e5510212052c48c8745ee91ec06fe05e7bd0b6b46a1ca00e7","sha256_slice":"d7b14feda686578e5510212052c48c8745ee91ec06fe05e7bd0b6b46a1ca00e7","source_version":null,"team_id":null,"uuid":"BED051D3-2D7E-3ABE-AB0F-5531EA54B58A"},"frameworks":[{"is_private":false,"is_weak":false,"name":"/opt/homebrew/Cellar/ldns/1.9.0/lib/libldns.3.dylib"},{"is_private":false,"is_weak":false,"name":"/opt/homebrew/opt/openssl@3/lib/libcrypto.3.dylib"},{"is_private":false,"is_weak":false,"name":"/usr/lib/libSystem.B.dylib"}],"function_starts_count":4,"imports":[{"address":0,"dylib":"/opt/homebrew/Cellar/ldns/1.9.0/lib/libldns.3.dylib","is_lazy":false,"is_weak":false,"name":"ldns_calc_keytag"},{"address":0,"dylib":"/opt/homebrew/Cellar/ldns/1.9.0/lib/libldns.3.dylib","is_lazy":false,"is_weak":false,"name":"ldns_get_errorstr_by_id"},{"address":0,"dylib":"/opt/homebrew/Cellar/ldns/1.9.0/lib/libldns.3.dylib","is_lazy":false,"is_weak":false,"name":"ldns_key_rr2ds"},{"address":0,"dylib":"/opt/homebrew/Cellar/ldns/1.9.0/lib/libldns.3.dylib","is_lazy":false,"is_weak":false,"name":"ldns_rdf2native_int16"},{"address":0,"dylib":"/opt/homebrew/Cellar/ldns/1.9.0/lib/libldns.3.dylib","is_lazy":false,"is_weak":false,"name":"ldns_rdf2native_int8"},{"address":0,"dylib":"/opt/homebrew/Cellar/ldns/1.9.0/lib/libldns.3.dylib","is_lazy":false,"is_weak":false,"name":"ldns_rdf2str"},{"address":0,"dylib":"/opt/homebrew/Cellar/ldns/1.9.0/lib/libldns.3.dylib","is_lazy":false,"is_weak":false,"name":"ldns_rr_dnskey_algorithm"},{"address":0,"dylib":"/opt/homebrew/Cellar/ldns/1.9.0/lib/libldns.3.dylib","is_lazy":false,"is_weak":false,"name":"ldns_rr_dnskey_flags"},{"address":0,"dylib":"/opt/homebrew/Cellar/ldns/1.9.0/lib/libldns.3.dylib","is_lazy":false,"is_weak":false,"name":"ldns_rr_free"},{"address":0,"dylib":"/opt/homebrew/Cellar/ldns/1.9.0/lib/libldns.3.dylib","is_lazy":false,"is_weak":false,"name":"ldns_rr_get_type"},{"address":0,"dylib":"/opt/homebrew/Cellar/ldns/1.9.0/lib/libldns.3.dylib","is_lazy":false,"is_weak":false,"name":"ldns_rr_new_frm_fp"},{"address":0,"dylib":"/opt/homebrew/Cellar/ldns/1.9.0/lib/libldns.3.dylib","is_lazy":false,"is_weak":false,"name":"ldns_rr_owner"},{"address":0,"dylib":"/opt/homebrew/Cellar/ldns/1.9.0/lib/libldns.3.dylib","is_lazy":false,"is_weak":false,"name":"ldns_rr_print"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"_DefaultRuneLocale"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"__error"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"__maskrune"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"__stderrp"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"__stdoutp"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"abort"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"exit"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"fclose"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"fopen$DARWIN_EXTSN"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"fprintf"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"free"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"fwrite"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"malloc"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"memchr"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"snprintf"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"strdup"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"strerror"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"strlen"}],"interesting_strings":{},"iokit_surface":null,"library_matches":[],"library_profile":{"libraries":{"FLAC":["1.5.0",1],"ldns":["1.9.0",1]},"library_ratio":0.5,"total_functions":4,"total_identified":2},"network_surface":{"api_usage":{"callers":[],"classes":[],"methods":[]},"endpoints":[],"has_network_entitlement":false,"network_frameworks":[]},"objc_classes":{},"objc_metadata":{"classes":{}},"sections":[{"name":"__text","offset":4400,"protection":"r-x","segment":"__TEXT","size":2272},{"name":"__stubs","offset":6672,"protection":"r-x","segment":"__TEXT","size":336},{"name":"__cstring","offset":7008,"protection":"r-x","segment":"__TEXT","size":712},{"name":"__const","offset":7720,"protection":"r-x","segment":"__TEXT","size":101},{"name":"__unwind_info","offset":7824,"protection":"r-x","segment":"__TEXT","size":112},{"name":"__got","offset":16384,"protection":"rw-","segment":"__DATA_CONST","size":248}],"summary":"This ad-hoc signed arm64 executable is 52 KB and contains only 4 functions with no identifiable frameworks. The generic UUID filename and minimal function count suggest it may be a small utility or test binary, but the lack of meaningful symbols, frameworks, or signing information prevents identification of its actual purpose or behavior. Security analysis requires source code review or runtime observation.","swift_metadata":null,"title":"Unknown utility — purpose cannot be determined from binary metadata","total_strings":133,"xpc_services":[]}