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

@ledgerhq/hw-transport-webhid

Package Overview
Dependencies
Maintainers
20
Versions
242
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@ledgerhq/hw-transport-webhid

Ledger Hardware Wallet WebHID implementation of the communication layer

  • 6.27.8
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
19K
decreased by-80.31%
Maintainers
20
Weekly downloads
 
Created
Source

GitHub, Ledger Devs Discord, Developer Portal

@ledgerhq/hw-transport-webhid

Allows to communicate with Ledger Hardware Wallets.

[Web] (WebHID) – WebHID check browser support.


Are you adding Ledger support to your software wallet?

You may be using this package to open a USB connection between your web application and the device.

For a smooth and quick integration:

  • See the developers’ documentation on the Developer Portal and
  • Go on Discord to chat with developer support and the developer community.

FAQ: "DOM Exception" is triggered when creating the transport

The transport functions create() and listen() must be called in the context of a user interaction (like a "click" event), otherwise it fails with DOM Exception. This is by WebUSB design. You also must run on HTTPS.

How to use this transport?

Please check @ledgerhq/hw-transport-webusb documentation because it is very similar paradigm.

Support status

WebUSB is currently only supported on Google Chrome / Chromium DEV version and by explicitly enabling chrome://flags/#enable-experimental-web-platform-features

API

Table of Contents

TransportWebHID

Extends Transport

WebHID Transport implementation

Parameters
  • device HIDDevice
Examples
import TransportWebHID from "@ledgerhq/hw-transport-webhid";
...
TransportWebHID.create().then(transport => ...)
close

Release the transport device

Returns Promise<void>

exchange

Exchange with the device using APDU protocol.

Parameters

Returns Promise<Buffer> a promise of apdu response

isSupported

Check if WebUSB transport is supported.

list

List the WebUSB devices that was previously authorized by the user.

listen

Actively listen to WebUSB devices and emit ONE device that was either accepted before, if not it will trigger the native permission UI.

Important: it must be called in the context of a UI click!

Parameters
  • observer Observer<DescriptorEvent<HIDDevice>>

Returns Subscription

request

Similar to create() except it will always display the device permission (even if some devices are already accepted).

openConnected

Similar to create() except it will never display the device permission (it returns a Promise<?Transport>, null if it fails to find a device).

open

Create a Ledger transport with a HIDDevice

Parameters
  • device HIDDevice

Keywords

FAQs

Package last updated on 30 Nov 2022

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