Bitcoin Forum
May 24, 2024, 01:03:20 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Bitcoinj for PoS?  (Read 1001 times)
EcuaMobi (OP)
Legendary
*
Offline Offline

Activity: 1862
Merit: 1469


https://Ecua.Mobi


View Profile WWW
June 17, 2014, 06:01:09 PM
 #1

I'm trying to create a fork of BitcoinJ for PoS coins.

I have experience on Java and Android, but I have less knowledge on PoS than I'd like.

I've successfully connected to a PoS network and I'm receiving the blocks. However, I'm not able to decode the responses.

Can somebody with experience on PoS list the main difference between PoW (ex: Bitcoin) and PoS (ex: Peercoin) protocol-wise?
What should I check to be able to understand how to connect and read the response?

Any help is appreciated.




elbandi
Hero Member
*****
Offline Offline

Activity: 525
Merit: 529


View Profile
June 17, 2014, 07:18:31 PM
 #2

If i good remember, transacion has a new field (nTime):
https://github.com/ppcoin/ppcoin/blob/master/src/main.h#L451

and block has a vchBlockSig field:
https://github.com/ppcoin/ppcoin/blob/master/src/main.h#L922
ChuckOne
Sr. Member
****
Offline Offline

Activity: 364
Merit: 250

☕ NXT-4BTE-8Y4K-CDS2-6TB82


View Profile
June 17, 2014, 08:42:40 PM
 #3

I'm trying to create a fork of BitcoinJ for PoS coins.

I have experience on Java and Android, but I have less knowledge on PoS than I'd like.

I've successfully connected to a PoS network and I'm receiving the blocks. However, I'm not able to decode the responses.

Can somebody with experience on PoS list the main difference between PoW (ex: Bitcoin) and PoS (ex: Peercoin) protocol-wise?
What should I check to be able to understand how to connect and read the response?

Any help is appreciated.

If you know Java well, clone Nxt. Smiley
EcuaMobi (OP)
Legendary
*
Offline Offline

Activity: 1862
Merit: 1469


https://Ecua.Mobi


View Profile WWW
June 17, 2014, 09:11:20 PM
 #4

If i good remember, transacion has a new field (nTime):
https://github.com/ppcoin/ppcoin/blob/master/src/main.h#L451

and block has a vchBlockSig field:
https://github.com/ppcoin/ppcoin/blob/master/src/main.h#L922


Thank's for the info. I'm checking that out.

If you know Java well, clone Nxt. Smiley

Thanks for the tip. However, I see this Nxt Android Wallet is just a very light client with no real connection to the network.
Is there any other Android client or Nxt-J implementation?

I want to fork BitcoinJ to be able to create wallets similar to Andrea's.

bitgold
Sr. Member
****
Offline Offline

Activity: 353
Merit: 250


View Profile
June 17, 2014, 09:13:53 PM
 #5

I'm trying to create a fork of BitcoinJ for PoS coins.

I have experience on Java and Android, but I have less knowledge on PoS than I'd like.

I've successfully connected to a PoS network and I'm receiving the blocks. However, I'm not able to decode the responses.

Can somebody with experience on PoS list the main difference between PoW (ex: Bitcoin) and PoS (ex: Peercoin) protocol-wise?
What should I check to be able to understand how to connect and read the response?

Any help is appreciated.

If you know Java well, clone Nxt. Smiley

Aren't there many NXT clones already?
Besides, is NXT really open source? Last time I heard, their "open source" code is a few releases behind.
ChuckOne
Sr. Member
****
Offline Offline

Activity: 364
Merit: 250

☕ NXT-4BTE-8Y4K-CDS2-6TB82


View Profile
June 17, 2014, 10:45:16 PM
 #6

Thanks for the tip. However, I see this Nxt Android Wallet is just a very light client with no real connection to the network.
Is there any other Android client or Nxt-J implementation?

I want to fork BitcoinJ to be able to create wallets similar to Andrea's.

That is the source. It includes a Web-Client: https://bitbucket.org/JeanLucPicard/nxt/overview

That is the Web-Client as a one-click-installer: http://nxtra.org/nxt-wallet/

That does fit your description of Nxt-J?
ChuckOne
Sr. Member
****
Offline Offline

Activity: 364
Merit: 250

☕ NXT-4BTE-8Y4K-CDS2-6TB82


View Profile
June 17, 2014, 10:46:13 PM
 #7

Aren't there many NXT clones already?
Besides, is NXT really open source? Last time I heard, their "open source" code is a few releases behind.

As far as I get it, he want to create a new sort of client/library for PoS coins. That would be coin agnostic.
Stouse49
Full Member
***
Offline Offline

Activity: 209
Merit: 100



View Profile
June 18, 2014, 08:52:29 AM
 #8

Do a search for peercoin Android Wallet.  Others have worked on this problem.

Some have found that it would not be possible to implement an SPV client for any PoS coin.  Why?

Because to verify a block header, one needs to coinbase transaction to determine if the block is a PoW block or a PoS block.  That requires more information than what is in the block header.

BTC:
ChuckOne
Sr. Member
****
Offline Offline

Activity: 364
Merit: 250

☕ NXT-4BTE-8Y4K-CDS2-6TB82


View Profile
June 20, 2014, 04:09:20 PM
 #9

Do a search for peercoin Android Wallet.  Others have worked on this problem.

Some have found that it would not be possible to implement an SPV client for any PoS coin.  Why?

Because to verify a block header, one needs to coinbase transaction to determine if the block is a PoW block or a PoS block.  That requires more information than what is in the block header.

Exactly. In PoS, you need the effective balances at block X to verify the block generator. These balances you get only by scanning the complete blockchain OR trusting somebody giving them to you. So, SPV in PoS not possible AFAIK.

But Nxt will use other means of achieving SPV.
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!