Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@govtechsg/dnsprove

Package Overview
Dependencies
Maintainers
0
Versions
23
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@govtechsg/dnsprove

Helper utility for retrieving OpenAttestations document store address records from DNS

  • 2.8.0
  • latest
  • Source
  • npm
  • Socket score

Version published
Maintainers
0
Created
Source

Open Attestation (dnsprove)

A helper library to retrieve OpenAttestation DNS-TXT records from domains using Google's public DNS service.

A valid OpenAttestation DNS-TXT record looks like:

[
  {
    name: "example.openattestation.com.",
    type: 16,
    TTL: 110,
    data: '"openatts net=ethereum netId=3 addr=0x2f60375e8144e16Adf1979936301D8341D58C36C"',
  },
];

Validation is run on all retrieved records to ensure they conform to the expected format, and records that fail validation will simply be omitted from the returned results.

Installation

npm i @govtechsg/dnsprove

Debug

To see validation failures run the library with the debug flag turned on, either

In Browser:

localStorage.debug="dnsprove*"

In NodeJS:

DEBUG="dnsprove*" npm run test

Types

This library uses runtypes for compile time static type checking as well as run time input validation. The generated documentation below is inaccurate for any Runtypes generated types due to documentation generator limitations.

API

Table of Contents

OpenAttestationDNSTextRecord

OpenAttestationDnsDidRecord

IDNSRecord

IDNSQueryResponse

CustomDnsResolver

Type: function (domain: string): Promise<IDNSQueryResponse>

defaultDnsResolvers

Type: Array<CustomDnsResolver>

queryDns

Parameters

Returns Promise<IDNSQueryResponse>

parseOpenAttestationRecord

Parses one openattestation DNS-TXT record and turns it into an OpenAttestationsDNSTextRecord object

Parameters
  • record string e.g: '"openatts net=ethereum netId=3 addr=0x0c9d5E6C766030cc6f0f49951D275Ad0701F81EC"'

Returns GenericObject

parseDocumentStoreResults

Takes a DNS-TXT Record set and returns openattestation document store records if any

Parameters

Returns Array<OpenAttestationDNSTextRecord>

parseDnsDidResults

Parameters

Returns Array<OpenAttestationDnsDidRecord>

getDocumentStoreRecords

Queries a given domain and parses the results to retrieve openattestation document store records if any

Parameters
Examples
> getDocumentStoreRecords("example.openattestation.com")
> [ { type: 'openatts',
net: 'ethereum',
netId: '3',
addr: '0x2f60375e8144e16Adf1979936301D8341D58C36C',
dnssec: true } ]

Returns Promise<Array<OpenAttestationDNSTextRecord>>

getDnsDidRecords

Parameters

Returns Promise<Array<OpenAttestationDnsDidRecord>>

License

MIT

Keywords

FAQs

Package last updated on 17 Jul 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc