Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

LNURL-auth support for LNDHub #1254

Merged
merged 1 commit into from
Jan 12, 2023
Merged

Conversation

Talej
Copy link
Contributor

@Talej Talej commented Jan 5, 2023

Description

Relates to issue: ZEUS-1045

Added support for LNURL-auth for LNDHub backend with signature being lndhub://user:pass rather than typical message signing.

Also made a slight adjustment on the LnurlAuth view to center the domain inline with all other components.

This pull request is categorized as a:

  • New feature
  • Bug fix
  • Code refactor
  • Configuration change
  • Locales update
  • Quality assurance
  • Other

Checklist

  • I’ve run yarn run tsc and made sure my code compiles correctly
  • I’ve run yarn run lint and made sure my code didn’t contain any problematic patterns
  • I’ve run yarn run prettier and made sure my code is formatted correctly
  • I’ve run yarn run test and made sure all of the tests pass

Testing

If you modified or added a utility file, did you add new unit tests?

  • No, I’m a fool
  • Yes
  • N/A

I have tested this PR on the following platforms (please specify OS version and phone model/VM):

  • Android
  • iOS

I have tested this PR with the following types of nodes (please specify node version and API version where appropriate):

  • LND (REST)
  • LND (Lightning Node Connect)
  • Core Lightning (c-lightning-REST)
  • Core Lightning (Spark)
  • Eclair
  • LndHub

Locales

  • I’ve added new locale text that requires translations
  • I’m aware that new translations should be made on the Zeus Transfix page and not directly to this repo

Third Party Dependencies and Packages

  • Contributors will need to run yarn after this PR is merged in
  • 3rd party dependencies have been modified:
    • verify that package.json and package-lock.json have been properly updated
    • verify that dependencies are installed for both iOS and Android platforms

Other:

  • Changes were made that require an update to the README
  • Changes were made that require an update to onboarding

NfcEvents,
TagEvent,
Ndef
} from 'react-native-nfc-manager';
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the edits on this file were all intended for your other PR

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like I branched off that one accidentally. Clearly wasn’t paying attention.

will fix

lnurlAuth = () =>
Promise.resolve({
signature: `lndhub://${stores.settingsStore.username}:${stores.settingsStore.password}`
});
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I thought there was an actual /auth endpoint we could use

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That endpoint was for actual LNDHub auth (fetching an auth token) - didn’t actually do any message signing

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Corrected!

@@ -336,10 +336,12 @@ export default class LND {
msg: Base64Utils.btoa(data.msg),
signature: data.signature
});
lnurlAuth = (r_hash: string) => this.signMessage(r_hash);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

love what you've done here, wrapping up the signMessage method for the new call

@kaloudis kaloudis merged commit 53336c5 into ZeusLN:master Jan 12, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants