Comments (8)
@abdrasulov Would this be an easy fix?
from bitcoin-kit-android.
It also appears that TransactionSerializer.serialize()
is not working properly which may lead to the issue stated above. I have tested trying to deserialize transactions using raw hex returned from the network and it did not return a transaction where the txid != transaction.hash
, my understanding is that the transaction id from the network should match the generated hash from the received transaction.
I have also tested the Test
directory with tests testing the library and deserializing transactions and the expected tx hash was incorrect and failed the test. I think this may be the culprit or at the very least a good starting point.
from bitcoin-kit-android.
Okay nevermind the TransactionSerializer not working i didn't realize the toReversedHex()
function was needed to view the human-readable hex value. However the problem still remains of the input and out put addresses being null or ""
from bitcoin-kit-android.
It actually looks like after further digging that fun extract(transaction: FullTransaction) { .. }
may be the reason we have weirdness with addresses.
Is there a reason we only assign addresses and update the transaction if it is "Our" transaction? This seems like an easy thing to spot by the user hat incoming transactions will have a blank received from address.
from bitcoin-kit-android.
Hey @AndroDevcd ,
Not all the inputs and outputs may be filled with address field. Sometimes it's impossible. For example, if the input being sent is not in our storage, then we don't try to obtain it from the node. So we try to derive it from the input's signatureScript. For some input/output types like P2PKH or P2WPKHSH it's possible. For others it's not.
The reason why we extract addresses only for isMine
transactions is that if it's not isMine
, then it means it doesn't have any inputs or outputs concerning my wallet. So we just ignore it.
from bitcoin-kit-android.
Ahh okay, so then that basically means there's no way to know where the sender's bitcoin address was? I just wanted to be able to show on my app the address that the inbound sats came from but it sounds like this wouldn't be possible?
from bitcoin-kit-android.
Yes. For some (I’d say the most) inputs it’s impossible
from bitcoin-kit-android.
Okay sounds good, also @esen I will be submitting some PR's today for your wallet kit and bitcoin kit libraries that I think adds some nice touches and bug fixes
from bitcoin-kit-android.
Related Issues (20)
- Configuration to disable/configure logging
- Dash Testnet not syncs
- does not contain a CMakeLists.txt file. HOT 1
- Get the pending transactions
- Bitcoin Mainnet Sync Does Not Work HOT 4
- Sync with XPUB HOT 2
- Conflicting kit.listeners
- Bitcoin Testnet Sync.API(): Kit Error Message: FileNotFoundException: https://btc-testnet.horizontalsystems.xyz/api HOT 1
- Connecting to my own node HOT 2
- Update and use github & jitpack versioned releases HOT 1
- Remove JCenter lines from build.gradle or at least specify what used by it directly
- Remove android.enableJetifier line from gradle.properties
- Use distributionSha256Sum for Verification of downloaded Gradle
- External keychain must be 0, not 1
- I need 3 bitcoin to my btc Help me anyone HOT 1
- Crash inside library (with SQLiteReadOnlyDatabaseException) HOT 1
- How to use taproot signature
- See all receive addresses
- Bitcoin kit not available in Jitpack
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from bitcoin-kit-android.