react-native-webview-crypto
TypeScript icon, indicating that this package has built-in type declarations

0.0.25 • Public • Published

react-native-webview-crypto

npm

Working version based on /saulshanabrook/react-native-webview-crypto and PR https://github.com/webview-crypto/react-native-webview-crypto/pull/9

This brings window.crypto.subtle to your React Native application. It does this by communicating with a hidden WebView, which performs the actual computation.

Refer to the webview-crypto repo for most of the code and some caveats.

Installation

npm install --save react-native-webview react-native-webview-crypto
react-native link

known issues

if you use react-native-crypto and get warnings about cyclic require make sure to import it before the bridge

import 'react-native-crypto'
import WebviewCrypto from 'react-native-webview-crypto'

getRandomValues

for complete compatability with webcrypto (window.crypto.getRandomValues) you can install react-native-crytpo or react-native-get-random-values

Usage

Rendering the PolyfillCrypto will start up a WebView to transparently proxy all the crypto calls to.

import React, { Component } from 'react'
import { View } from 'react-native'

import App from './app'

import PolyfillCrypto from 'react-native-webview-crypto'

class TopLevelComponent extends Component {
  render() {
    return (
      <View>
        <PolyfillCrypto />
        <App />
      </View>
    )
  }
}

AppRegistry.registerComponent('WhateverName', () => TopLevelComponent)

Now, in any of your code, you can access window.crypto.subtle, just like you would in a browser.

Example repo There is also an example repo which runs some example crypto using this library.

This project was funded by Burke Software and Consulting LLC for passit.

Package Sidebar

Install

npm i react-native-webview-crypto

Weekly Downloads

1,020

Version

0.0.25

License

MIT

Unpacked Size

7.11 kB

Total Files

4

Last publish

Collaborators

  • linusu
  • saulshanabrook
  • sirpush