python-bitcoinrpc · PyPI

How to verify if a transaction is correctly signed?

Given an arbitrary signed raw transaction, how can we easily verify if all inputs are correctly signed (admiting all UTXOs are present and fee is higher than zero)? I know there is an RPC command in bitcoin core testmempoolaccept but this will also check if all inputs are available to be spent in the mempool/blockchain and I want to test a transaction that is a child to a parent transaction that has not yet been broadcasted.
The signed transaction instance could have the scriptPubKey of the used utxos stored as metadata (since it needs to know these to sign each input) and use the stored utxos to perform this validation - alternatively, the verification method could ask for the scriptPubKeys of the utxos as input. I was looking for some nice way to do this in python but was surprised how neglected this task is:
EDIT: converting to PSBT is not possible/easy so the last option I mentioned won't work. I have the transactions in serialized 'network' format (what you get from `bitcoin-cli getrawtransaction hex')
EDIT2: escalated to bitcoin stack exchange: https://bitcoin.stackexchange.com/questions/96759/how-to-verify-if-a-transaction-is-correctly-signed
submitted by johnturtle to BitcoinBeginners [link] [comments]

A giant Faucet for HTML5 Canvas JavaScript


An example of a pseudo 3d effect using rectangle particles as water droplets
This is a giant Faucet for HTML5 Canvas JavaScript. With a mouse click the faucet will turn on and water particles will start pouring out until it is closed again. When it hits some vertical offset, the water will dissipate outwards with each particle getting slightly bigger as a front perspective view for a pseudo-3d effect. Particle clean-up/removal occurs when reaching the bottom canvas border to keep things running smoothly. Little mists near the spout hole are generated with random vx and vy velocity, with text indication on each side as on/off along with sound effects. The faucet image was modified using Adobe Photoshop.
A use case scenario would be a literal tongue-in-cheek faucet for said crypto-currency. The way you would dispense a set number of coins would require running a server with a full active node in Linux. Then by using a backend script such as a modified variation of bitcoinPHP, python, or nodeJS can be used to validate a user's wallet address by which a set amount can be safely sent with integrated SSL (secure socket layer) protocols via Remote Procedure Calls or RPCs. It's another fun way of 'spicing' up these kinds of projects, if that's your thing.
submitted by Chancellor-Parks to html5 [link] [comments]

⚡ Lightning Network Megathread ⚡

Last updated 2018-01-29
This post is a collaboration with the Bitcoin community to create a one-stop source for Lightning Network information.
There are still questions in the FAQ that are unanswered, if you know the answer and can provide a source please do so!

⚡What is the Lightning Network? ⚡

Explanations:

Image Explanations:

Specifications / White Papers

Videos

Lightning Network Experts on Reddit

  • starkbot - (Elizabeth Stark - Lightning Labs)
  • roasbeef - (Olaoluwa Osuntokun - Lightning Labs)
  • stile65 - (Alex Akselrod - Lightning Labs)
  • cfromknecht - (Conner Fromknecht - Lightning Labs)
  • RustyReddit - (Rusty Russell - Blockstream)
  • cdecker - (Christian Decker - Blockstream)
  • Dryja - (Tadge Dryja - Digital Currency Initiative)
  • josephpoon - (Joseph Poon)
  • fdrn - (Fabrice Drouin - ACINQ )
  • pmpadiou - (Pierre-Marie Padiou - ACINQ)

Lightning Network Experts on Twitter

  • @starkness - (Elizabeth Stark - Lightning Labs)
  • @roasbeef - (Olaoluwa Osuntokun - Lightning Labs)
  • @stile65 - (Alex Akselrod - Lightning Labs)
  • @bitconner - (Conner Fromknecht - Lightning Labs)
  • @johanth - (Johan Halseth - Lightning Labs)
  • @bvu - (Bryan Vu - Lightning Labs)
  • @rusty_twit - (Rusty Russell - Blockstream)
  • @snyke - (Christian Decker - Blockstream)
  • @JackMallers - (Jack Mallers - Zap)
  • @tdryja - (Tadge Dryja - Digital Currency Initiative)
  • @jcp - (Joseph Poon)
  • @alexbosworth - (Alex Bosworth - yalls.org)

Medium Posts

Learning Resources

Books

Desktop Interfaces

Web Interfaces

Tutorials and resources

Lightning on Testnet

Lightning Wallets

Place a testnet transaction

Altcoin Trading using Lightning

  • ZigZag - Disclaimer You must trust ZigZag to send to Target Address

Lightning on Mainnet

Warning - Testing should be done on Testnet

Atomic Swaps

Developer Documentation and Resources

Lightning implementations

  • LND - Lightning Network Daemon (Golang)
  • eclair - A Scala implementation of the Lightning Network (Scala)
  • c-lightning - A Lightning Network implementation in C
  • lit - Lightning Network node software (Golang)
  • lightning-onion - Onion Routed Micropayments for the Lightning Network (Golang)
  • lightning-integration - Lightning Integration Testing Framework
  • ptarmigan - C++ BOLT-Compliant Lightning Network Implementation [Incomplete]

Libraries

Lightning Network Visualizers/Explorers

Testnet

Mainnet

Payment Processors

  • BTCPay - Next stable version will include Lightning Network

Community

Slack

IRC

Slack Channel

Discord Channel

Miscellaneous

⚡ Lightning FAQs ⚡

If you can answer please PM me and include source if possible. Feel free to help keep these answers up to date and as brief but correct as possible
Is Lightning Bitcoin?
Yes. You pick a peer and after some setup, create a bitcoin transaction to fund the lightning channel; it’ll then take another transaction to close it and release your funds. You and your peer always hold a bitcoin transaction to get your funds whenever you want: just broadcast to the blockchain like normal. In other words, you and your peer create a shared account, and then use Lightning to securely negotiate who gets how much from that shared account, without waiting for the bitcoin blockchain.
Is the Lightning Network open source?
Yes, Lightning is open source. Anyone can review the code (in the same way as the bitcoin code)
Who owns and controls the Lightning Network?
Similar to the bitcoin network, no one will ever own or control the Lightning Network. The code is open source and free for anyone to download and review. Anyone can run a node and be part of the network.
I’ve heard that Lightning transactions are happening “off-chain”…Does that mean that my bitcoin will be removed from the blockchain?
No, your bitcoin will never leave the blockchain. Instead your bitcoin will be held in a multi-signature address as long as your channel stays open. When the channel is closed; the final transaction will be added to the blockchain. “Off-chain” is not a perfect term, but it is used due to the fact that the transfer of ownership is no longer reflected on the blockchain until the channel is closed.
Do I need a constant connection to run a lightning node?
Not necessarily,
Example: A and B have a channel. 1 BTC each. A sends B 0.5 BTC. B sends back 0.25 BTC. Balance should be A = 0.75, B = 1.25. If A gets disconnected, B can publish the first Tx where the balance was A = 0.5 and B = 1.5. If the node B does in fact attempt to cheat by publishing an old state (such as the A=0.5 and B=1.5 state), this cheat can then be detected on-chain and used to steal the cheaters funds, i.e., A can see the closing transaction, notice it's an old one and grab all funds in the channel (A=2, B=0). The time that A has in order to react to the cheating counterparty is given by the CheckLockTimeVerify (CLTV) in the cheating transaction, which is adjustable. So if A foresees that it'll be able to check in about once every 24 hours it'll require that the CLTV is at least that large, if it's once a week then that's fine too. You definitely do not need to be online and watching the chain 24/7, just make sure to check in once in a while before the CLTV expires. Alternatively you can outsource the watch duties, in order to keep the CLTV timeouts low. This can be achieved both with trusted third parties or untrusted ones (watchtowers). In the case of a unilateral close, e.g., you just go offline and never come back, the other endpoint will have to wait for that timeout to expire to get its funds back. So peers might not accept channels with extremely high CLTV timeouts. -- Source
What Are Lightning’s Advantages?
Tiny payments are possible: since fees are proportional to the payment amount, you can pay a fraction of a cent; accounting is even done in thousandths of a satoshi. Payments are settled instantly: the money is sent in the time it takes to cross the network to your destination and back, typically a fraction of a second.
Does Lightning require Segregated Witness?
Yes, but not in theory. You could make a poorer lightning network without it, which has higher risks when establishing channels (you might have to wait a month if things go wrong!), has limited channel lifetime, longer minimum payment expiry times on each hop, is less efficient and has less robust outsourcing. The entire spec as written today assumes segregated witness, as it solves all these problems.
Can I Send Funds From Lightning to a Normal Bitcoin Address?
No, for now. For the first version of the protocol, if you wanted to send a normal bitcoin transaction using your channel, you have to close it, send the funds, then reopen the channel (3 transactions). In future versions, you and your peer would agree to spend out of your lightning channel funds just like a normal bitcoin payment, allowing you to use your lightning wallet like a normal bitcoin wallet.
Can I Make Money Running a Lightning Node?
Not really. Anyone can set up a node, and so it’s a race to the bottom on fees. In practice, we may see the network use a nominal fee and not change very much, which only provides an incremental incentive to route on a node you’re going to use yourself, and not enough to run one merely for fees. Having clients use criteria other than fees (e.g. randomness, diversity) in route selection will also help this.
What is the release date for Lightning on Mainnet?
Lightning is already being tested on the Mainnet Twitter Link but as for a specific date, Jameson Lopp says it best
Would there be any KYC/AML issues with certain nodes?
Nope, because there is no custody ever involved. It's just like forwarding packets. -- Source
What is the delay time for the recipient of a transaction receiving confirmation?
Furthermore, the Lightning Network scales not with the transaction throughput of the underlying blockchain, but with modern data processing and latency limits - payments can be made nearly as quickly as packets can be sent. -- Source
How does the lightning network prevent centralization?
Bitcoin Stack Exchange Answer
What are Channel Factories and how do they work?
Bitcoin Stack Exchange Answer
How does the Lightning network work in simple terms?
Bitcoin Stack Exchange Answer
How are paths found in Lightning Network?
Bitcoin Stack Exchange Answer
How would the lightning network work between exchanges?
Each exchange will get to decide and need to implement the software into their system, but some ideas have been outlined here: Google Doc - Lightning Exchanges
Note that by virtue of the usual benefits of cost-less, instantaneous transactions, lightning will make arbitrage between exchanges much more efficient and thus lead to consistent pricing across exchange that adopt it. -- Source
How do lightning nodes find other lightning nodes?
Stack Exchange Answer
Does every user need to store the state of the complete Lightning Network?
According to Rusty's calculations we should be able to store 1 million nodes in about 100 MB, so that should work even for mobile phones. Beyond that we have some proposals ready to lighten the load on endpoints, but we'll cross that bridge when we get there. -- Source
Would I need to download the complete state every time I open the App and make a payment?
No you'd remember the information from the last time you started the app and only sync the differences. This is not yet implemented, but it shouldn't be too hard to get a preliminary protocol working if that turns out to be a problem. -- Source
What needs to happen for the Lightning Network to be deployed and what can I do as a user to help?
Lightning is based on participants in the network running lightning node software that enables them to interact with other nodes. This does not require being a full bitcoin node, but you will have to run "lnd", "eclair", or one of the other node softwares listed above.
All lightning wallets have node software integrated into them, because that is necessary to create payment channels and conduct payments on the network, but you can also intentionally run lnd or similar for public benefit - e.g. you can hold open payment channels or channels with higher volume, than you need for your own transactions. You would be compensated in modest fees by those who transact across your node with multi-hop payments. -- Source
Is there anyway for someone who isn't a developer to meaningfully contribute?
Sure, you can help write up educational material. You can learn and read more about the tech at http://dev.lightning.community/resources. You can test the various desktop and mobile apps out there (Lightning Desktop, Zap, Eclair apps). -- Source
Do I need to be a miner to be a Lightning Network node?
No -- Source
Do I need to run a full Bitcoin node to run a lightning node?
lit doesn't depend on having your own full node -- it automatically connects to full nodes on the network. -- Source
LND uses a light client mode, so it doesn't require a full node. The name of the light client it uses is called neutrino
How does the lightning network stop "Cheating" (Someone broadcasting an old transaction)?
Upon opening a channel, the two endpoints first agree on a reserve value, below which the channel balance may not drop. This is to make sure that both endpoints always have some skin in the game as rustyreddit puts it :-)
For a cheat to become worth it, the opponent has to be absolutely sure that you cannot retaliate against him during the timeout. So he has to make sure you never ever get network connectivity during that time. Having someone else also watching for channel closures and notifying you, or releasing a canned retaliation, makes this even harder for the attacker. This is because if he misjudged you being truly offline you can retaliate by grabbing all of its funds. Spotty connections, DDoS, and similar will not provide the attacker the necessary guarantees to make cheating worthwhile. Any form of uncertainty about your online status acts as a deterrent to the other endpoint. -- Source
How many times would someone need to open and close their lightning channels?
You typically want to have more than one channel open at any given time for redundancy's sake. And we imagine open and close will probably be automated for the most part. In fact we already have a feature in LND called autopilot that can automatically open channels for a user.
Frequency will depend whether the funds are needed on-chain or more useful on LN. -- Source
Will the lightning network reduce BTC Liquidity due to "locking-up" funds in channels?
Stack Exchange Answer
Can the Lightning Network work on any other cryptocurrency? How?
Stack Exchange Answer
When setting up a Lightning Network Node are fees set for the entire node, or each channel when opened?
You don't really set up a "node" in the sense that anyone with more than one channel can automatically be a node and route payments. Fees on LN can be set by the node, and can change dynamically on the network. -- Source
Can Lightning routing fees be changed dynamically, without closing channels?
Yes but it has to be implemented in the Lightning software being used. -- Source
How can you make sure that there will be routes with large enough balances to handle transactions?
You won't have to do anything. With autopilot enabled, it'll automatically open and close channels based on the availability of the network. -- Source
How does the Lightning Network stop flooding nodes (DDoS) with micro transactions? Is this even an issue?
Stack Exchange Answer

Unanswered Questions

How do on-chain fees work when opening and closing channels? Who pays the fee?
How does the Lightning Network work for mobile users?
What are the best practices for securing a lightning node?
What is a lightning "hub"?
How does lightning handle cross chain (Atomic) swaps?

Special Thanks and Notes

  • Many links found from awesome-lightning-network github
  • Everyone who submitted a question or concern!
  • I'm continuing to format for an easier Mobile experience!
submitted by codedaway to Bitcoin [link] [comments]

Fun and (dangerous) Games in Electrum console.

Disclaimer: Not my address. It's using the ["all"] x 12 BIP39 test-vector seed.
So a while ago trezorctl used to have about a medium level of difficulty with installation on Windows due to ethash or rpc libraries. Long sense fixed. But I always wanted a self contained python trezor play-pen. Then I found the electrum console.
Really NOT recommended even to the most advanced user, but I still thought it was amazingly cool since the whole Trezor API is up and running under the hoods. Here's a small example.
  1. Open your electrum Trezor wallet
  2. Choose View->Console
  3. Read, understand, and acknowledge the warnings.
  4. Consider the following console commands.
```
from trezorlib import btc, tools client=wallet.keystore.get_client().client btc.get_address(client, "Bitcoin", tools.parse_path("m/44'/0'/0'/0/0")) '1JAd7XCBzGudGpJQSDSfpmJhiygtLQWaGL' ```
TaDa!!!
As the warning suggests. Never plunk code someone gives you into the electrum console. Still thought it was pretty cool. Look at the Trezor test scripts for some good ideas of what to play around with.
submitted by brianddk to TREZOR [link] [comments]

Noobie Q: Falling over at Mastering Bitcoin’s first Python example...

I’ve seen others have had something similar but for the life of me I’m still stuck...at the first step in Mastering Bitcoin’s first Python example..
My setup -
LND Raspberry PI connecting to it via Putty SSH (blockchain up to date and running fine, eg getblockchain info)
I’ve installed python with: sudo apt-get install libssl-dev
Process I followed -
Once connected through SSH/Putty, I change to my “bitcoin” user
Using nano, I create a “rpc_example.py” file following the code in the book
Then back at the cli I run it with:
“Python rpc_example.py”
And I get this error below which shows its fallen over at the first line - import from bitcoin.rpc import RawProxy
“No module named bitcoin.rpc”
Confusion: I’m not sure if this is an access issue cos of the way I’m connecting or if I’m mixed up between JSON-RPC vs Cli or I’m not following/running things from the right location.
Help please? or maybe I just need to first get a better grip on the fundamentals of Linux/python?
Edit 6/1/18: Success. This group rocks.
I wasn’t going to continue with Mastering Bitcoin if I didn’t get past that exercise - but thanks to you for all the timely advice and suggestions i now can. So much learning in the doing that’s for sure. You can see my finding-my-way-in-the-dark-experience (with the fantastic guidance by this group) in my comments below.
submitted by Haso_04 to Bitcoin [link] [comments]

FR: 10 steps to facing the ultimate fitness test

Here at RPC we often discuss "frame" and how to hold onto it in adverse situations. Throughout life your frame will be tested. Big time corporate job interview? More than likely the hiring manager will throw you fitness tests to see how you handle unexpected challenges. This is a test of frame. Approaching an attractive girl? She will almost assuredly begin testing your frame from the very start. Visiting the in-laws? Your overbearing mother-in-law might give you a bunch of crap in front of the family about your recent decision to buy a house in X neighborhood instead of Y with the "better" schools. You get the point. Fitness tests are a fact of life and passing these fitness tests is critical to your success as a man.
But each of these examples pales in comparison to perhaps the most common fitness test of all: being unintentionally provoked by a stranger on the internet.
As a mod I get to see things that get auto-moderated, which affords me a front row seat to some gems that the rest of you don't get to see. Sometimes a gem of such great value pops up and it just wouldn't be right for me to keep it to myself. Sharing is caring right?
So here we see the turbo-masculine alpha-chad, u/FlyingBaratoplata's reinforced tissue-paper frame in action. Some key learnings can be taken from this:
1) When a stranger on the internet questions you, you need to fight back. The best way is to threaten physical violence. 2) Remind them that they and their ant-sized penis are out of reach of your python like guns. By asserting that if it weren't for a thin sheet of glass and anonymity you would perpetrate a felonious assault against them for daring to question you. 3) By informing them that they barely escaped your wrath, you remove 5 lbs from their 1 rep max on bench, 10 on deadlift. You aren't stronger for it, but you'll feel like you are and "feels is reals" for men who threaten strangers on the internet. 4) Call them something demeaning. Avoid racist or hateful language. You aren't a jerk after all and you want to seem magnanimous. Stick to things like, "champ" or "sport". The OP here missed by calling him "boy" because that implies he has testicles. You don't want to give any ground on that front because the only way to guarantee that yours are bigger is to ensure you don't admit that he has any. 5) Admit that you care. It's the only surefire way you can demonstrate that you don't. 6) Misdirect. Collateral damage is the name of the game (it worked in Dresden right?). If you can use your venting to take shots at another "passive aggressive disrespectful little cuck" poster, it's like killing two birds with one stone. Efficiency is important after all, you wouldn't want to wear out your keyboard. 7) Insult the precepts and jargon of the community you barged in on as "dumb buzzwords". It's the 49th law of power. 8) Point out that theoretical discussion is mere philosophical fart sniffing. You're above all that "thinking" and "considering" nonsense and it's important that you let everyone know it. 8.5) Fart jokes. 'nuff said. 9) Casually float your stellar credentials as a Biblical scholar by telling them to learn the Word. Don't bother to use any Word or verses in doing so, they might just learn some Word and if they did it would threaten your superiority. 10) Wrap up by making them appear childish. This always works. Even if you are posting like a 6 year old strung out on too many smarties after trick-or-treating, if you can make them out to be a 3 year old, you're still better than them.
See? 10 easy steps to ensure that you don't lose frame when a stranger says something you don't like on the internet.
You're welcome.
I take tips in bitcoin.
submitted by OsmiumZulu to RPChristians [link] [comments]

Technical community | LBTC tech community member develops a new blockbrowser ‘Thebes’

Technical community | LBTC tech community member develops a new blockbrowser ‘Thebes’
Recently, from the LBTC developer community ,a geek called Chen Jian helped LBTC develope a new block browser — “Thebes” : https://lbtc.me/lbtc/explorer .

https://preview.redd.it/lbfr0m0ev4031.png?width=1059&format=png&auto=webp&s=973796c43edbe3f095b82ad0b967ed31e20c831d
Thebes mainly USES python development language and flask development framework. In terms of database, high-performence MongoDB is selected to cooperate with Mysql. By using transaction id as the primary key of data storage, the speed of transaction information search is greatly improved. In other development respects, the Web server selects nginx, the process management tool selects supevisor and python(gevent), and the timing task tool selects crontab. Meanwhile, in the development process of Thebes, some js and CSS code fragments were optimized and compressed to speed up the page loading speed. In GTmetrix and Yellowlab’s global blockbrowser performance tests, the “Thebes” browser received the highest grade A in core metrics such as CSS snippet authoring, image loading, style & script optimization, linking server resources, and docking cache validators.
Click the link to see the full rating report:
https://gtmetrix.com/reports/lbtc.me/rsXxSwhI
https://yellowlab.tools/result/fcakefdwkk
Compared to existing LBTC blockbrowsers, Thebes has the following innovative features
Global Mining Node Full Information Statistics
In the node page of Thebes, the user can easily find information about all the mining nodes of LBTC. As of May 17, 2019, Beijing time, LBTC has 231 full nodes in operation, among which 17 nodes use the network client of /Satoshi: 0.14.2/70013 version. Of the 231 nodes, two have adopted IPv6’s sixth generation Internet communication scheme. In addition to this basic information, the user can see information for each specific node. For example, the node ranked 81 in votes :(cobo.com/lbtc.7), the address balance, transaction information, block history, voting information, proposal status and so on.

https://preview.redd.it/rw32iyqhv4031.png?width=1075&format=png&auto=webp&s=42c9322b6eeb891b1ff288e8375fe5e9d97fd287
The blockbrowser is also a network interface to JSON-RPC. In order to better count the mining nodes of the LBTC network around the world, the browser does this by continuously sending getaddr information to all accessible network nodes.
Real-time Update of Network Status
In a Bitcoin network, the value of a Bitcoin is proportional to the square of the number of people using the network, which is determined by two parameters: the number of addresses and the daily transaction volume. In the “Thebes” browser, the core parameters of the network, such as daily transaction volume, daily change in the number of newly added Lightning Bitcoin addresses, total number of Lightning Bitcoin holders, average transfer fee and average block volume, are all clearly displayed.

https://preview.redd.it/pukrf8hjv4031.png?width=1074&format=png&auto=webp&s=3e5989be9c95b4fc1bc2e578defddfdb48c4109e
About the Technical Community
The LBTC technology community was officially launched in early April 2019. The core developer of the technology community, W.H.H., announced on Twitter on April 15 that the LBTC foundation would invest more than $1 million in technology community incentives. The open rewards system gives developers from around the world a way to learn about blockchain development, try new ideas and contribute to projects. The technology community is still in its infancy, but it has brought together a group of passionate developers. By writing documents, developing blockbrowsers and wallets, and organizing offline seminars for the developer community, they have helped the community thrive and opened the door to LBTC for many investors and developers.
submitted by LightningBitcoin to LightningBTC [link] [comments]

Ravencoin Open Developer Meeting - 2/15/2019

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:02 PM
Hello everybody!

theking - Last Friday at 2:02 PM

Seems likes it’s been so long since this meeting was held. At least a month 📷

Tron - Last Friday at 2:02 PM

Hi all!!!

Tom - Last Friday at 2:02 PM

Big boss is here !(edited)

BigZim - Last Friday at 2:03 PM

Oh hi

theking - Last Friday at 2:04 PM

Hi @Tron

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:04 PM

Topics for today: Release 2.2.2, Mobile Wallet, Restricted Assets, SLC Raven Meetup📷1

truedev - Last Friday at 2:05 PM

hello

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:05 PM

Release 2.2.2 GO

J. | ravenland.org - Last Friday at 2:05 PM

Hey

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:05 PM

BTW, blondfrogs won't be able to join us today. 📷

corby - Last Friday at 2:05 PM

Hi all

Chatturga - Last Friday at 2:05 PM

Blondefrogs has been working on the 2.2.2 update. He isnt here today, but he left this tidbit for the meeting:(edited)"Release 2.2.2 has a bunch of new updates. The sync speed fix that was released in 2.2.1 has been updated even more to use less memory/ram and uses less CPU. Each node used to hold all addresses that contained an asset as well as the amount in those addresses. That is now optional with the -assetindex flag. Which can be put into the raven.conf or added as a parameter when starting the wallet. Some other wallet issues were also fixed with this memory update. This is considered an mandatory update, especially if you haven't updated to 2.2.1 which resolved a potential fork bug fix. I would still suggest updating to 2.2.2 even if you are on 2.2.1."📷6

Jeroz - Last Friday at 2:07 PM

wen source?📷1

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:07 PM

There's a PR that was just moved to Develop.When is now

Jeroz - Last Friday at 2:08 PM

great 📷

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:08 PM

It'll be merged by the devs to master and then binaries should be posted soon

truedev - Last Friday at 2:09 PM

any idea when dividends will be functional?

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:09 PM

A bunch of testing has been happening and is currently running on the seed-nodes.

Tron - Last Friday at 2:10 PM

No timeline for dividends, but it is the one function that doesn't need any changes to consensus. And it can be done on tier 2 with a python script. The plan is still to build in a rpc call.📷2

truedev - Last Friday at 2:11 PM

alright

SpyderDev - Last Friday at 2:12 PM

We have been focusing on sync performance and have been running many tests. I've added an image of the results of this testing. Currently we still want to work on getting the Windows QT sync times faster (at least closer to what they are using just ravend). Overall we are very happy with the speeds and hope it will help people that have struggled getting their nodes up to date.(edited)📷

Jeroz - Last Friday at 2:13 PM

Yeah that table completely puzzled me

[Master] Roshii - Last Friday at 2:13 PM

hello!📷6

Jeroz - Last Friday at 2:13 PM

Fast branch is 2.2.1? or 2.2.2? Develop branch is 2.2.0?

SpyderDev - Last Friday at 2:15 PM

Sorry, should have clarified that. I was testing while it was still under development. On the table the top is the new-sync code, the bottom is the old "assets" release. As of about 5 minutes ago all of this code is on the develop branch.

Jeroz - Last Friday at 2:15 PM

Although syncing is mostly bottlenecked by cpu speed, that 16 core windows-qt still looks off to me. I synced windows Qt using 2.2.2 in ~2h on a i5-7600K.ok

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:17 PM

Okay, we good to move to the Mobile update?

SpyderDev - Last Friday at 2:17 PM

The Windows box is an AWS instance and there is some concern that the remote desktop could be slowing the QT UI down causing the horrible sync times. I am working on getting a local Windows 10 resource and will have updated information once that is ready (early next week).

Jeroz - Last Friday at 2:18 PM

ah that might explain. Ubuntu qt was 45 mins for me

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:18 PM

CoolOkay, Mobile!Go!

[Master] Roshii - Last Friday at 2:18 PM

📷📷1

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:19 PM

@[Master] Roshii has been working closely with some of the other devs to get the iOS version out the door.Android will follow closely.

Jeroz - Last Friday at 2:20 PM

is android an easy port?

J. | ravenland.org - Last Friday at 2:20 PM

Usually its the case(?), i mean easier 📷(edited)

SpyderDev - Last Friday at 2:20 PM

Just copy and paste right Roshii 📷

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:20 PM

LOLNo, usually its a completely new development effort.For the RVN Wallets they are both written in native iOS/Android code.

[Master] Roshii - Last Friday at 2:21 PM

So the iOS and Android use the same Core SPV module written in C, and it's the most difficult part.I have already did some work when it comes to Android, and it's 70% finishedHave also to port all the changes we lately did to the iOS wallet ...

boatsandhoes - Last Friday at 2:21 PM

yeah, unfortunately its not as easy as cut and paste for ios to android

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:21 PM

Anybody interested in installing the TestFlight version and helping us test?

boatsandhoes - Last Friday at 2:22 PM

yes

J. | ravenland.org - Last Friday at 2:22 PM

For android? sure.

BW__ - Last Friday at 2:22 PM

Android? yes.(edited)

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:22 PM

I'll talk to Apple about adding Android support to TestFlight.Might be a while.

J. | ravenland.org - Last Friday at 2:22 PM

lol

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:22 PM

Anybody on here using iOS?

Jeroz - Last Friday at 2:22 PM

Yeh me

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:22 PM

besides me...

[Master] Roshii - Last Friday at 2:23 PM

Android is very close, fortunately I'll have enough coffee in Morocco to finish the wallet in two weeks.(edited)📷4📷5

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:23 PM

https://testflight.apple.com/join/NTVQ2FfY (400 installs available)Join the RVN Wallet betaAvailable on iOS📷

theking - Last Friday at 2:23 PM

I will test iOS if needed

[Master] Roshii - Last Friday at 2:23 PM

@shiny

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:24 PM

Some of the devs have been doing a bunch of testing on iOS but we would love others to help.Bugs can be reported on GitHubhttps://github.com/RavenProject/ravenwallet-iosGitHubRavenProject/ravenwallet-iosContribute to RavenProject/ravenwallet-ios development by creating an account on GitHub.📷

truedev - Last Friday at 2:25 PM

how confident are you that apple will allow it on the appstore

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:25 PM

It's already in the App store.

truedev - Last Friday at 2:25 PM

ok

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:25 PM

That wasn't easy though.

truedev - Last Friday at 2:26 PM

yah figured, a lot of coins have been completely rejected(edited)

Chatturga - Last Friday at 2:26 PM

The devs already jumped through Apples 152,315 flaming hoops to get it in there.

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:26 PM

Yup, many meetings and phone calls.

J. | ravenland.org - Last Friday at 2:26 PM

wen rvn modular phone

Jeroz - Last Friday at 2:27 PM

Looking good📷📷7

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:28 PM

Okay, any questions about iOS release?

jaysonb - Last Friday at 2:28 PM

seed word format changed? i seem to have to have same words. did i need to delete and install fresh?

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:29 PM

No, it used your old ones.Always have your 12 words. especially when testing.

ravencoin maximalist 🧘🏻♂ - Last Friday at 2:30 PM

I’ve got iOS

Tron - Last Friday at 2:30 PM

If you use your 12-words, and then sync, and you're missing funds. Go here: https://medium.com/@tronblack/ravencoin-testing-ios-wallet-b713deb2c800MediumRavencoin — Testing iOS Wallet – Tron Black – MediumThank you for helping us test the Ravencoin iOS mobile wallet. Since you are in an early group of testers, you might have used the…

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:30 PM

Sweet, install and report bugs.

Tron - Last Friday at 2:30 PM

Or just go there...

jaysonb - Last Friday at 2:30 PM

that article scared me so i moved everything off.but i'll put some back on now

ravencoin maximalist 🧘🏻♂ - Last Friday at 2:31 PM

📷

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:31 PM

That's unfortunate. You don't need to be scared ever if you have your 12 words.

[Master] Roshii - Last Friday at 2:31 PM

android current state(edited)📷

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:32 PM

Here's the install link one more time for those that have joined late: https://testflight.apple.com/join/NTVQ2FfYJoin the RVN Wallet betaAvailable on iOS📷Okay, Tron's topic: Restricted Tokens

Tron - Last Friday at 2:33 PM

I have an idea.(edited)📷7📷6

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:34 PM

That several other devs have helped with. 📷

Tron - Last Friday at 2:34 PM

📷

SpyderDev - Last Friday at 2:34 PM

and lawyers

Tron - Last Friday at 2:34 PM

When the project started, ICOs were the big thing. Now it is STOsThe main difference is the legal wrapping and rules around securities.If Ravencoin has two more token types (Tags and Restricted Assets), there are lots of ways to make compliant tokens.Importantly, it doesn't affect the existing tokens at all.Tags - Tokens that can be sent only by the issuer once (with metadata).These tokens start with (hashtag)(edited)📷8

SpyderDev - Last Friday at 2:37 PM

^(octothorpe)

Tron - Last Friday at 2:37 PM

The Restricted Assets start with $, and can be frozen by the issuer. But they only move between tagged addresses.(edited)

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:38 PM

Tags can be sent to a user's address after the issuer has done the necessary due diligence for an STO issuance.(edited)

Tron - Last Friday at 2:38 PM

The issuer determines which tags the Restricted Asset will honor.This can be used for lots of different use cases.

EEE - Last Friday at 2:38 PM

Stunning interface guys

boatsandhoes - Last Friday at 2:39 PM

will that determination be a setting in the wallet?

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:39 PM

Restricted assets can then only be sent to addresses that are allowed and have the proper Tags.

boatsandhoes - Last Friday at 2:39 PM

interesting📷1

J. | ravenland.org - Last Friday at 2:39 PM

Did you guys get contacted by some entity* whos forcing the restricted address policy? or is this done as precautionary measure? At first glance your idea sounds good Tron.(edited)

Tron - Last Friday at 2:39 PM

Example: $UBER token only moves among addresses tagged with #KYC

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:40 PM

So Ravenland will have to buy a bunch more spam tokens.📷4

SpyderDev - Last Friday at 2:40 PM

#ravenland.

boatsandhoes - Last Friday at 2:40 PM

so is the $ something that can be added to an existing asset?

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:40 PM

It's not a forced thing. But adding the ability for Raven to be used in new use cases where legal requirements exist.

Tron - Last Friday at 2:40 PM

Not contacted by anyone, and not precautionary. Ravencoin Assets are just tools. This is just another tool that will help issuers of security tokens.📷9📷4

BW__ - Last Friday at 2:41 PM

Love it.

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:41 PM

It'll be a new token type that you can create @boatsandhoes📷1

ravencoin maximalist 🧘🏻♂ - Last Friday at 2:41 PM

That sounds awesome

SpyderDev - Last Friday at 2:41 PM

I for one am very excited about this...📷4

Hans_Schmidt - Last Friday at 2:41 PM

How does the $ token owner specify the required # tags?

DeejayQQ - Last Friday at 2:41 PM

Can the same name have different token type?Sorry need time to digest

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:42 PM

Still working out the details. Tron will be posting additional info about the idea soon.

Steelers - Last Friday at 2:42 PM

Cool

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:42 PM

Feedback is wanted!

Tron - Last Friday at 2:42 PM

Q: Was this originally the plan for Ravencoin? A: No. This is in response to the regulatory ramp up in 2018 in some jurisdictions which requires that only known individuals or entities to operate peer-to-peer on certain tokens. For jurisdictions that allow unrestricted peer-to-peer transfer, we strongly encourage use of the original Ravencoin assets. The Restricted Assets are an adaptation to satisfy burdensome, privacy-destroying regulations, with a goal of reducing information replication which makes Ravencoin Restricted Assets a better alternative to those being promoted now.

jaysonb - Last Friday at 2:43 PM

all nodes will validate the transactions not just those interested in the transaction - i assume all will validate..

boatsandhoes - Last Friday at 2:43 PM

so essentially any name already secured in the hopes of having that functionality are worth less because they wont be able to?

theking - Last Friday at 2:44 PM

Can the restricted assets be time based in any way? For instance, in some STO regulated environment, there is a lockup for some period of time after issuance, but then after a certain period of time the restriction goes away and the securities can be traded. Is that contemplated at all?

DeejayQQ - Last Friday at 2:44 PM

If I already have Tron as my asset, there could be another Tron but under a different token type such as restricted assets?

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:44 PM

Yes all nodes will do consensus checks.

corby - Last Friday at 2:44 PM

@boatsandhoes there's going to be a grace period where you can purchase $XXX if you own XXXon the order of months

boatsandhoes - Last Friday at 2:45 PM

📷 📷 📷 📷

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:45 PM

Yes, you have the TRON asset and you can also have the $TRON asset.(edited)

Tron - Last Friday at 2:45 PM

Regarding the lockup....

boatsandhoes - Last Friday at 2:45 PM

how many RVN for that?

Tron - Last Friday at 2:45 PM

Rule 144 under the Securities Act of 1933 This is an important rule to be aware of in terms of privately held securities. This rule provides the most commonly used exemption for holders to sell restricted securities (Note: For context, a restricted security is a security sold in an exempt offering, except for Reg A+). The general idea is that you can publicly resell your “restricted” (privately sold) securities only when the restricted legend is removed. The solution Ravencoin Restricted Assets provides is the ability for the Iissuer to Freeze the asset ininto the holders account. The qty will be visible, and the frozen status will be visible. The meta-data for a Freeze can specify 144_Restricted. The issuer can Unfreeze to release the 144 restriction.Similar for Reg D 1-year lockup.@theking

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:46 PM

@theking ^^

DeejayQQ - Last Friday at 2:46 PM

What is the timeline for this restricted asset to be implemented?📷1

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:46 PM

No timelines yetStill in the ideation phase.

SpyderDev - Last Friday at 2:46 PM

Fresh off the press...

DeejayQQ - Last Friday at 2:46 PM

Ok, idea for nowGot it

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:46 PM

Wanting input for the idea.

boatsandhoes - Last Friday at 2:47 PM

a preset for lock up settings would be nice

Jeroz - Last Friday at 2:47 PM

What about the ability to move an asset from restricted to unrestricted after grace period similar to the reissue ability? By the issuer(edited)

boatsandhoes - Last Friday at 2:47 PM

adjustable preset*

DeejayQQ - Last Friday at 2:48 PM

If this restricted assets would help underlying token listed on exchanges for trading by satisfying the legal requirements, I don’t see why not. There are only benefits📷2

boatsandhoes - Last Friday at 2:48 PM

yeah, win win

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:48 PM

There is something similar in vote tokens.

corby - Last Friday at 2:48 PM

@Jeroz the issuer would be able to "reissue" and relax restrictions

DeejayQQ - Last Friday at 2:48 PM

Just throwing things out here. Can we just make all existing tokens crested so far restricted assets?*created

boatsandhoes - Last Friday at 2:49 PM

stupid question, is it possible to have burned rvn cost for the $ to add onto the block reward as a bonus?(edited)

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:49 PM

No, @DeejayQQ there should be both usecases available in the platform.

corby - Last Friday at 2:49 PM

We (my dog and I) are envisioning a differentiated space where we can charge a lot more RVN to keep non-serious people out..(edited)

Tron - Last Friday at 2:49 PM

@Jeroz Yes, as long as the asset is still "reissuable", you could change the logic from (#KYC & #ACCREDITED) to just #KYC📷3

Jeroz - Last Friday at 2:49 PM

I'm just worrying about the name uniqueness if you can have #BANANA and $BANANA

BW__ - Last Friday at 2:50 PM

Is it fair to assume that tags can be standardized for specific purposes? If so, should we create something akin to an 'ERC' in git repo?

Jeroz - Last Friday at 2:50 PM

@Tron sounds cool

truedev - Last Friday at 2:50 PM

honestly, I think you should be able to buy/create an asset in a set, with all types(edited)

boatsandhoes - Last Friday at 2:50 PM

^that part

Hans_Schmidt - Last Friday at 2:51 PM

Since the #KYC tag is just locked to an address, what prevents someone from selling their address and thereby the KYC?

corby - Last Friday at 2:51 PM

The "#" types won't trade -- they're just stamps to stamp addresses as qualified-to-hold-some-stuff..

Tron - Last Friday at 2:51 PM

The tags are created by the users. The system is still jurisidiction agnostic.

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:51 PM

@Hans_Schmidt nothing really, the same thing as selling your username password to any other existing financial app account.

corby - Last Friday at 2:51 PM

@Hans_Schmidt Real world networks, high cost of entry (for serious applications)For non-serious applications, nothing

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:51 PM

You still have the liability associated with that account though.

Jeroz - Last Friday at 2:52 PM

@corby what about BANANA/ vs $BANANA/ ?Or do you want to make them subassets?

boatsandhoes - Last Friday at 2:52 PM

@Jeroz better safe than sorry, just swoop both

Tron - Last Friday at 2:52 PM

A country could require that #SOMECOUNTRY tag has to exist before moving $SPECIALASSET to an address. The users set the rules. #KYC was just an example because it is an industry problem at the moment.

corby - Last Friday at 2:52 PM

#BANANA, $BANANA, TRICYCLE, and BANANA can all coexist just fine I think..

theking - Last Friday at 2:53 PM

Thanks @Tron. This is great and I think something that will enable raven to become an even more widely used platform.📷4

Tron - Last Friday at 2:53 PM

That's the hope. I think it solves some real problems that the industry is trying to solve through incompatible ERC-20 experiments.📷3

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:54 PM

/hacks📷3

boatsandhoes - Last Friday at 2:54 PM

what is the purposed cost for $ in addition to an existing asset?

corby - Last Friday at 2:54 PM

People that own #THESE I am calling "Qualifiers" -- they just stamp their mark on addresses. Issuers of $THESE need to establish trust with #THESE and #THOSE and then decide what restrictions to apply.📷1

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:54 PM

5 mins left. Stay on this topic or switch to meetup?

Tron - Last Friday at 2:55 PM

@boatsandhoes Not determined.

Jeroz - Last Friday at 2:55 PM

yeah the idea is a nice proof of ownership / membership

DeejayQQ - Last Friday at 2:55 PM

Meetup

Chatturga - Last Friday at 2:55 PM

TL;DR - The SLC meetup is in 1 month. Go to https://www.meetup.com/Salt-Lake-City-salt-lake-city-Meetup/ to indicate if you plan on attending so that we have a somewhat accurate headcount.MeetupSalt Lake City Ravencoin (Salt Lake City, UT)Ravencoin is a blockchain and platform optimized for transferring assets, such as tokens, from one holder to another, and is built on a fork of the Bitcoin code. It is intended to prioritize security,📷

corby - Last Friday at 2:55 PM

@boatsandhoes One Million Raven

Chatturga - Last Friday at 2:55 PM

Punch and pie

J. | ravenland.org - Last Friday at 2:56 PM

Can the SLC meetup made interactive for people that cant make it there?

theking - Last Friday at 2:56 PM

What about having just one name ( you first buy the standard raven token under whatever name you like) and then the holder of the owner token is the only one to create restricted tokens ? Might be some way to ensure no name confusion.📷4

boatsandhoes - Last Friday at 2:56 PM

what about that block reward bonus concept for purchasing $. would that work?

Chatturga - Last Friday at 2:56 PM

I dont know that we have the ability to make it interactive as far as Q&A goes, but I'll look into it. We should have it live streaming. @J. | ravenland.org(edited)📷2

BW__ - Last Friday at 2:56 PM

@Tron Is there same kind of logic layer to restricted assets?(edited)

Tron - Last Friday at 2:57 PM

@theking I like that idea.

Jeroz - Last Friday at 2:57 PM

Quick question that is offtopic but I think deserves an answer because it was asked a couple of times earlier this week: Will unique assets get a reissuable function? To change IPFS.(edited)📷2

Tron - Last Friday at 2:57 PM

@BW__ Yes. Simple and, or, not and parenthesis - limited in length.(edited)

boatsandhoes - Last Friday at 2:57 PM

@theking thats a good idea

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:58 PM

@Jeroz There is not a way to do that currently.

BW__ - Last Friday at 2:58 PM

@Tron That makes sense. Thank you.

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 2:58 PM

Just make sure your changes to the information have the same hash as the previous data and your golden. 📷📷1

Jeroz - Last Friday at 2:59 PM

Any plans on changing that, perhaps when introducing new types of assets?

boatsandhoes - Last Friday at 2:59 PM

i like that it cant be changed

corby - Last Friday at 3:00 PM

Thanks everyone!

theking - Last Friday at 3:00 PM

@Tron there was some info floating around about a 2nd later KYC solution ( from your recent podcast w Crypto Koala). Is that a separate solution someone is working on or part of this new concept?📷1

Tron - Last Friday at 3:01 PM

Starting with the introduction of messaging, every transaction can have an IPFS hash. Can be used as an public invoice, details about the transaction, etc.@theking The same new concept.

[Master] Roshii - Last Friday at 3:02 PM

Ok, we're done.

Steelers - Last Friday at 3:02 PM

How would Raven handle for instance a stock split?

BW__ - Last Friday at 3:02 PM

Are there sync concerns if a restricted asset logic layer is added?

Tron - Last Friday at 3:02 PM

@theking The KYC provider would store the KYC info, and send the Tag to an address with meta data that specifies that they're holding the KYC data. The KYC data would not be public, but could be audited.

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 3:02 PM

That way you could update information about the original unique asset with each transaction.@Steelers Just a simple re-issue of the asset

Tron - Last Friday at 3:03 PM

@bw_ The logic layer is only a small db that stores the meta-data about the Restricted Asset, and enforces the restriction in the consensus rules. Rule returns true/false.(edited)

RavencoinDev (Jesse/Wolfsokta) - Last Friday at 3:03 PM

Thanks everybody! I have to run.

Jeroz - Last Friday at 3:04 PM

I'm looking forward to the discussions to let this take shape. Thanks all! 📷📷4

Tron - Last Friday at 3:05 PM

@BW__ It would work very similarly to the way the units works now. Each asset has number of units and any transaction that makes it too granular (more satoshis) will fail in consensus -- even if it gets past the RPC checks.Signing off. Thanks all!!!📷9📷4📷9
submitted by Chatturga to Ravencoin [link] [comments]

BitShares -- Collection Of FAQs, Developers' Guides, Tutorials, Network/Wallet Configuration, ... and Much More

Thanks to Tsugimoto, we have a great collection of Developers Guide, FAQs, Tutorials & much more, for anyone wanting to get into BitShares.
Link: https://steemit.com/bitshares/@tsugimoto/bitshares-a-colloction-of-developers-tutorial-faqs-and-more
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Reading materials
General
Address structure, Format, block, time, etc
Protocol
Data structures
Public key system
Scriping language?
Account
Vesting Balance
Voting
Assets
Fee Pool * What is the fee pool all about?
Prediction Market
Market Fees
Market Pegged Assets
TransfeTransactions
Integration Guide * How to Run and Use a Full Node
Blockchain Interaction
Network and Wallet Configuration
Network and Wallet Configuration
CLI Wallet - FAQ
Create lifetime membership
Witness - FAQ
Price Feeds
Public & Private testnet differences
Committee Guide
Worker Guide
submitted by kryptosapien to BitShares [link] [comments]

BitN00B: Help with Python/JSON call : getNewAddress(account) - fail

When making a JSON call, RPC to bitcoind, what is "account" parameter in getNewAddress(account).
Does anyone have actual code to demo this? This is frustrating given how much time I have spent ( a day ),
trying to get this to work in code, trying different things, googling all over, following things to a dead end.

In my Bitcoin QT, I see no reference to "account", I don't know what to put there as a parameter.

Reference:
https://en.bitcoin.it/wiki/Original_Bitcoin_client/API_calls_list#Full_list

If I leave it blank, or I make up something to put there, I get a socket timeout.
I can successfully call: getblockchaininfo() (no params), and a few others with no socket timeout, but not getNewAddress. Anything and everything requiring a parameter fails.
--
Also if anyone can help, I please need a clear concise example of sending a transaction. I can find no good code examples on how to create a raw transaction and send with any Python/RPC/Bitcoind library out there. None. It should not take more than a few lines of code to send a transaction.
  1. set variables in a data structure
  2. make a call to send the transaction (that's it). The library will take params from the data structure, construct a raw transaction, convert that raw transaction to the format it needs when sending over http (json/rpc), as it does and I understand it to work that way.
    I would like to have the raw transaction printed out to debug, both raw transaction and the actual hex code that is sent.
    Thank You,
    JC
submitted by ThisCryptoFail to Bitcoin [link] [comments]

Factom Protocol Information

The Factom protocol is an open source general purpose data protocol built by an international group of technology companies that extends the security of blockchain to any type of data. Just as TCP / IP enables the WWW, the Factom Protocol enables countless applications to be built on top of it.
Factom is built from scratch and has novel design implementations that set it apart from all other blockchain protocols. We are confident these features will help propel Factom to become the internet's data integrity layer. You are invited to delve into our ecosystem and we look forward to answering any questions you have.
Token and Tokenomics
While the Factom Protocol is a two token system, only the Factoid (FCT) is transferable and able to be traded on exchanges. Entry Credits (EC) are obtained by burning FCT and are used to enter data into the Factom Protocol. Entry Credits are $.001 each and that price is fixed. Therefore, if FCT is worth $1.00 and you burn it, you receive 1,000 EC. If FCT is worth $10.00 each and you burn one, you receive 10,000 EC. This brilliant two token system allows for:
  1. The value of FCT to theoretically increase the more the Factom Protocol is utilized.
  2. Companies and governments can effectively budget for entering data onto the Protocol based upon their estimated usage.
  3. Subscription systems can be setup with 3rd parties where companies and governments don't have to hold cryptocurrency if they don't want to or can't for compliance reasons. FCT are still burned for EC by the 3rd party company but the subscriber is charged a small markup for the service.
Governance
Community Discussion
Development
Block Explorers
Tools
Testnet Resources
Top Exchanges (by volume)
Education
AMAs
Wallets
Authority Node Operators
Authority Node Operators are the coalition of companies that decentralize the Factom Protocol. .
Committees and Working Groups
As the Factom Protocol is one of the most decentralized blockchain projects in existence with no central authority, committees and working groups have been formed to deal with specific tasks.
Past Newsletters
submitted by DChapman77 to factom [link] [comments]

Nice Article About How HPB Perform Vs EOS (and so ETH)

HPB: Unique Blockchain Infrastructure
Now most public chains will mention that the problem of tps development is the problem of the blockchain. This is also because the traditional blockchain has the problem of poor performance. In order to reach consensus, the efficiency is sacrificed. But if you want to build an ecosystem of countless DAPPs based on the public chain, there is no guarantee of performance that is almost impossible.
The dream of building a DAPP ecosystem is that Bitcoin has not been completed and it is not necessary to complete it. Bitcoin is only a digital currency and it has initially fulfilled its historical mission. It has become a value storer, and it has opened the world of the blockchain. .
Ethereum started with the goal of building a world-wide computer that provided the infrastructure for building decentralized applications, but so far it has only succeeded in the crowdfunding field. Due to performance, cost, scalability, and other issues, it is not yet possible to become a DAPP infrastructure. By the end of 2017, a simple encrypted cat game would have caused Ethereum to jam. Ethereum tried to get rid of the predicament through techniques such as fragmentation, Plasma, and PoS consensus.
Newcomers, such as EOS, are highlighting their high performance, emphasizing the possibility of reaching mega-level tps. Then, in the future, an infrastructure is needed to build a prosperous DAPP ecosystem on this decentralized infrastructure to meet the user or business needs of different scenarios.
What kind of program is a better choice? This is what blue fox has been paying attention to. Blue Fox focuses on an HPB blockchain project that uses a completely different search path than other public chains or infrastructure. This path is worth paying attention to all the buddies who pay attention to the blockchain.
This path is a combination of hardware and software. It is more demanding and the practice is more difficult. However, if it is truly grounded, it may be a good path.
HPB to become a high-performance blockchain infrastructure
Whether HPB or EOS have the same goals, they must provide a high-performance infrastructure for the decentralized ecosystem. why? Mainly from the blockchain to the mainstream business scene point of view. The current blockchain has achieved some success in security and decentralization, but there are natural constraints in terms of efficiency. This hinders its application scenario to the mainstream.
This is also a direction that Blockchain 3.0 has been exploring. Through higher performance, lower costs, and better scalability to meet the needs of more decentralized application scenarios.
The current bitcoin and Ethereum's throughput are both worrying. Bitcoin supports about 7 transactions per second on average, and Ethereum has about 15 throughputs. If you make the block bigger, you can also increase the throughput, but it will cause the problem of block bloat. Last year, an encrypted cat game made everyone see the blockchain congestion problem. From a performance point of view, it takes a long time for blockchains to reach the mainstream.
In addition to the lack of tps performance, the transaction cost of the blockchain is high. Both ordinary users and developers cannot afford gas costs that are too high. For example, before Ethereum's crypto-games became hot, there were even transaction fees compared to encrypted cats. It is also expensive.
The HPB and EOS goals are similar, but their paths are completely different. HPB uses a combination of hardware and software, has its own dedicated chip hardware server, which makes it theoretically have higher performance.
HPB is also trying to create an operating system architecture that can build applications. This architecture includes accounts, identity and authorization management, policy management, databases, asynchronous communications, program scheduling on CPUs, FPGAs, or clusters, and hardware accelerated technology. Realizes low delay and high concurrency and realizes mega-level tps to meet the needs of commercial scenarios.
It is different from EOS. Its architecture, in addition to its software architecture and its hardware architecture, is a combination of hardware and software blockchain architecture that combines high-performance computing and cloud computing concepts. The hardware system includes a distributed core node composed of high performance computing hardware, a general communication network, and a cloud terminal supported by high performance computing hardware.
The core node supports a standard blockchain software architecture, including consensus algorithms, network communications, and task processing. It also introduces a hardware acceleration engine. It works with software to achieve high-performance tps through BOE technology (Blockchain Offload Engine) and consensus algorithm acceleration, data compression, and data encryption.
BOE makes HPB unique
In the HPB's overall architecture, compared with other blockchain infrastructures, there are obvious differences. One of the important points is its BOE technology.
BOE mentioned above, is the blockchain offload engine. The BOE engine includes BOE hardware, BOE firmware, and matching software systems. It is a heterogeneous processing system that achieves high performance and high concurrent computational acceleration by combining CPU serial capabilities with the parallel processing capabilities of the FPGA/ASIC chip.
In the process of parsing TCP packets and UDP packets, the BOE module does not need to participate in the CPU, which can save CPU resources. The BOE module performs integrity checking, signature verification, and account balance verification on received messages such as transactions and blocks, performs fragment processing on large data to be transmitted, and encapsulates the fragments to ensure the integrity of received data. At the same time, statistics work will be performed according to the received traffic of the TCP connection, and corresponding incentives will be provided according to the system contribution.
BOE has played its own role in signature verification speed, encryption channel security, data transmission speed, network performance, and concurrent connections.
The BOE acceleration engine embeds the ECDSA module. The main purpose of this module is to improve the speed of signature verification. ECDSA is also an elliptic curve digital signature algorithm. Although it is a mature algorithm that is widely used at present, the pure software method can only be performed thousands of times per second and cannot meet the high performance requirements. So the combination of BOE and ECDSA is a good attempt.
In the process of data transmission between different nodes, BOE needs to establish an encrypted channel. In this process, it uses a hardware random number generator to implement the security of the encrypted channel, because the seed of the random number of the key exchange becomes unpredictable.
The BOE acceleration engine also uses block data fragmentation broadcasting technology. Block fragmentation includes a complete block header, which facilitates the broadcast of newly generated blocks to all nodes. With block data fragmentation, network data can be quickly transmitted between different nodes.
The BOE technology can perform traffic statistics of node connections based on hardware, and can calculate network bandwidth data provided by different nodes. Only providing network bandwidth to the system will have the opportunity to become a high contribution value node. In this way, incentives for the contribution of the nodes are provided.
In terms of concurrency, BOE is expected to maintain more than 10,000 TCP sessions and handle 10,000 concurrent sessions through an acceleration engine. BOE's dedicated parallel processing hardware replaces the traditional software serial processing functions such as transaction data broadcasting, unverified blockwide network broadcasting, transaction confirmation broadcasting, and the like.
According to HPB estimates, through the BOE acceleration engine, the session response speed and the number of session maintenance can reach more than 100 times the processing power of the common computing platform node. If the actual environment can be achieved, it is a very significant performance improvement.
Consensus algorithm for internal and external bi-level elections
HPB not only significantly improves performance through BOE, but also adopts a dual-layer internal and external voting mechanism in consensus algorithms. It attempts to achieve more efficient consensus efficiency on the premise of ensuring security and privacy.
Outer election refers to the selection of high-contribution-value node members from many candidate nodes, and the election will use node contribution value evaluation indicators. Inner-layer election refers to an anonymous voting mechanism based on a hash queue. When a block is generated, it calculates which high-contribution value node preferentially generates a block. Nodes with high priority have the right to generate blocks preferentially.
So, how to choose high contribution value node? Here is the first indicator to evaluate the contribution value. The indicators include whether a BOE acceleration engine is configured, network bandwidth contribution (data throughput over a fixed period of time), reputation, and total node token holding time. Among them, the creditworthiness of the node is obtained through the analysis of participating transactions and data analysis such as packaged blocks and transaction forwarding. The total holding time of the node token can be obtained by real-time statistics on the account information.
The outer election adopts an adaptive and consistent election plan. That is, by maintaining the consistency of “books” to ensure the consistency of outer elections, this can reduce network synchronization, and can also use the data of each node on the chain. The first is to put the above-mentioned four evaluation indicators into the block. By keeping the account books consistent, you can calculate the current ranking of all the participating candidate nodes. The higher-ranking high-contribution value nodes will become the official high contribution in the next round. Value node.
With the formal high contribution value node, the goal of the inner election is to find the high contribution value node corresponding to each block as soon as possible. The entire process is divided into three phases: nominations, statistics, and calculations. These three phases combine security, privacy, and performance.
The first is the nomination. At the beginning of the voting period, the BOE acceleration engine generates a random Commit. The high contribution value node submits its Commit, and the Commit synchronizes with the chain generated by the high-performance node. After the voting period is over, the Commit in the blockchain is started and the ticket pool is created. The last is the calculation. The calculation is mainly based on the weight algorithm to calculate the node's generation priority in the block. Generate the highest-priority high-contribution value node and obtain the block package right.
Other nodes can verify the random number and address signature according to the principle of verifiable random function, which not only guarantees security, but also guarantees the unpredictability and privacy of high contribution value nodes.
In general, HPB's consensus algorithm combines security, privacy, and speed through a combination of hardware and software. Using the BOE acceleration engine to generate random numbers, contribution value evaluation indicators, coherence ledgers, anonymous voting mechanisms, weight algorithms, signature verification, etc., privacy, reliability, security, and high efficiency are achieved.
Universal virtual machine design: support for different blockchains
The HPB virtual machine adopts a plug-in design mechanism and can support multiple virtual machines. It can implement the combination of the underlying virtual machine and upper level program language translation and support, and support the basic application of virtual machines. In addition, the external interface of the virtual machine can be realized through customized API operations, which can interact with the account data and external data.
The advantage of this mechanism is that it can realize the high performance of native code execution when the smart contract runs, and it can also implement the common virtual machine mechanism supporting different blockchains. For example, it can support Ethereum virtual machine EVM. The smart contract on EVM can also be used on HPB.
Neo's virtual machine NeoVM can also be used on HPB. When high-performance scenarios are needed, users of both EVM and NeoVM need only a few adaptations to interact with other HPB applications.
The HPB smart contract has also made some improvements, such as the management of the life cycle, auditing and forming a common template. No progress can realize the full lifecycle management of smart contracts, such as the complete and controllable process management and integration rights management mechanism for intelligent contract submission, deployment, use, and logout.
In smart contract auditing, HPB conducts a protective audit that combines automated tool auditing with professional code design. In terms of templates, HPB gradually formed a generic smart contract template to support the flexible configuration of various common business scenarios.
Incentives for a positive cycle of token economy
When the high-contribution value node generates a block, it will receive a token reward from the system. From the design of the HPB, the system will issue a token of no more than 6% per year, and the additional token will be proportional to the total number of high-contribution nodes and candidate nodes.
In order to obtain the token reward from the system, it must first become a high contribution value node, and only the high contribution value node has the right to generate a block.
In order to obtain the right to generate a block, it is necessary to contribute, including holding a certain number of HPB tokens, having a BOE hardware acceleration engine, and contributing network bandwidth to the system.
From its mechanism, we can see that HPB's token economic system design is considered from the formation of a positive incentive system. It maintains the overall HPB system by holding the HPB token, having a BOE hardware acceleration engine, and contributing network bandwidth to the system. safe operation.
HPB landing: supports a variety of high-frequency scenes
In essence, HPB is a high-performance blockchain platform and is an infrastructure where various blockchain applications can be explored. Including blockchain finance, blockchain games, blockchain entertainment, blockchain big data, blockchain anti-fake tracking, blockchain energy and many other fields.
In terms of finance, decentralized lending, decentralized asset management, etc. can all be built on the HPB platform to meet high-frequency lending and transaction scenarios.
In terms of games, although all game operations are not practical, the up-chaining and trading of assets such as game props are important scenes. Once the realization of the game product chain, you can ensure that the game assets are transparent, unique, can not be tampered with, never disappeared, etc., providing great convenience for the transaction between the game products.
Compared with traditional centralized service providers, there are many advantages. For example, there is no need to worry about the loss, confiscation, or change of virtual game products. The transaction process is also simple and convenient. Since HPB has a high-performance blockchain, it is expected to support millions of concurrents, and many high-frequency scenarios can also be satisfied.
For blockchain entertainment, it can support the securitization of star assets, such as star-related token assets. In terms of blockchain big data, it can support the data right, ensure that the data owner controls the data ownership, ensure the authenticity of the data, traceability, can not be modified, and finally realize data transactions according to the needs of different entities. , to ensure personal privacy and data security.
Based on HPB's blockchain infrastructure, based on its high performance, blockchain applications can be built in multiple scenarios. The HPB design provides a blockchain application program interface and application development package. In the HPB blockchain base layer, it provides blockchain data access and interactive interfaces, and supports various applications and development languages ​​using JSON-RPC and RESTful APIs. It also supports multi-dimensional blockchain data query and transaction submission, and the interactive access interface can be integrated with the privilege control system.
The application development package includes comprehensive functional service packages that operate on blockchains based on different development languages. For example, it provides functional interfaces such as encryption, data signature, and transaction generation, and can seamlessly support integration and function expansion of various language service systems. , supports multiple language SDKs such as Java, JavaScript, Ruby, Python, and .NET.
Conclusion
If the future blockchain wants to enter the mainstream population, it must have high-performance public-chain or infrastructure support to form a true application ecosystem. Ethereum's dream to build a decentralized ecosystem cannot be achieved on an existing basis. Ethereum is trying to improve performance and expand scalability through fragmentation, plasma, and pos consensus mechanisms.
At the same time, the current status quo has also spawned other public-linked efforts, including eos, HPB, etc. Among them, HPB has adopted a unique combination of hardware and software, dedicated BOE hardware acceleration, signature verification speed, encryption channel security, data transmission Speed, network performance, and high concurrent support all have their own advantages over simple software solutions.
In the software architecture, consensus algorithms for internal and external elections, flexible virtual machine design, application program interfaces, and development packages are also used to provide infrastructure for the development of blockchain application scenarios.
From the overall design of HPB, its goal is to provide high-performance infrastructure for the entire blockchain to mainstream people. With a high-performance infrastructure, blockchains can only be implemented in many high-frequency scenarios to create more application ecosystems and have the opportunity to reach mainstream people.
The HPB team focused on the technical background, including the founder Wang Xiaoming who was an early evangelist in the blockchain and once participated in the establishment of UnionPay Big Data, Beltal, and Beltal CTO. Co-founder CTO Xu Li has more than 10 years of experience in chip industry R&D and management. He was responsible for the logic design, R&D, and FPGA chip marketing of the core products of the world's top qualified equipment suppliers and the world's largest component distributor. Technical VP Shu Shanlin once worked for Inspur, a well-known Chinese server manufacturer, as an embedded chief engineer, and has extensive R&D experience in embedded software and underlying software. Another co-founder, Li Jinxin, is a former blockchain analyst of Guotai Junan and has extensive experience in digital asset investment.
The background of the team members is in line with the HPB's soft and hard path. According to the latest monthly report, the basic PCB layout design of the BOE board, the overall architecture design of the BOE, and the ECC acceleration scheme have also been completed. At the same time, several tests have been completed for the BOE hardware acceleration engine.
It is hoped that HPB will develop rapidly and will embark on a path with its own characteristics in the future of blockchain infrastructure competition. It will provide support for more decentralized applications and eventually build a prosperous ecosystem.
Risk Warning: All Blue Fox articles do not constitute investment recommendations, investment risks, it is recommended to conduct in-depth inspection of the project, and carefully make their own investment decisions.
Source: https://mp.weixin.qq.com/s/RSuz6R6MTotEL_U__Al_Wg
submitted by azerbajian to HPBtrader [link] [comments]

A simple blockchain decoding tutorial

Everyone can help find new messages. Please see below:
(Note that these scripts do not require a local copy of the blockchain or even a Bitcoin account)
1 Decoding one transaction:
Download http://gateway.glop.me/ipfs/QmSU67Ei3TerNe32CcZTgd48jKqsVvBTgera1qBWFjKK9V/jean.py
(or http://gateway.glop.me/ipfs/QmburFHeUtM3wdrEj3rmUuBkx6iDmYpreyGCvHijgJhZnh/jean_b.py)
Usage:
python jean.py transaction_number
Example:
python jean.py 691dd277dc0e90a462a3d652a1171686de49cf19067cd33c7df0392833fb986a
Returns:
"Wikileaks Cablegate Backup
cablegate-201012041811.7z
Download the following transactions with Satoshi Nakamoto's download tool which can be found in transaction 6c53cd987119ef797d5adccd76241247988a0a5ef783572a9972e7371c5fb0cc Free speech and free enterprise! Thank you Satoshi!"
2 Downloading a transaction that generates a file:
A nice example is the original Bitcoin paper. It can be found in transaction 54e48e5f5c656b26c3bca14a8c95aa583d07ebe84dde3b7dd4a78f4e4186e713.
python jean.py 54e48e5f5c656b26c3bca14a8c95aa583d07ebe84dde3b7dd4a78f4e4186e713 > paper.pdf
Once it is done you will be able to see a pdf was generated in that directory.
Note that the transaction that generates the Bitcoin paper is related to the transaction that describes the Wikileaks cable dump, the cable dump itself, and many other transactions that have other content. Some has yet to be completely decrypted. These transactions are all related because they have common addresses involved or the money resulting from the transaction was used.
For example, take a look at this transaction: https://blockchain.info/tx/08654f9dc9d673b3527b48ad06ab1b199ad47b61fd54033af30c2ee975c588bd
If you do
python jean.py 08654f9dc9d673b3527b48ad06ab1b199ad47b61fd54033af30c2ee975c588bd
You will get a key that was leaked.
Now, if you look at the addresses involved, you can see one at the bottom, below Wikileaks. It does not show 'Escrow'. Go to that address and see its transactions. You will then find another message. Keep doing this and you'll eventually find the cable dump again. This is the process of 'following the change'.
Using this method we've found several transactions that involve Wikileaks that we don't quite understand. One good strategy is to generate a file from a transaction and then look at its 'magic numbers' to figure out what it could be.
Some of them are:
7379ab5047b143c0b6cfe5d8d79ad240b4b4f8cced55aa26f86d1d3d370c0d4c
d3c1cb2cdbf07c25e3c5f513de5ee36081a7c590e621f1f1eab62e8d4b50b635
cce82f3bde0537f82a55f3b8458cb50d632977f85c81dad3e1983a3348638f5c
2a14783f74796ace53e0a6859a7012723d3d6cd9dacf72d4e90a3394484093df
657aecafe66d729d2e2f6f325fcc4acb8501d8f02512d1f5042a36dd1bbd21d1
05e6c80d9d6469e7d1328e89b9d971b19972594701586bbcbd70070f2be799db
623463a2a8a949e0590ffe6b2fd3e4e1028b2b99c747e82e899da4485eb0b6be
5143cf232576ae53e8991ca389334563f14ea7a7c507a3e081fbef2538c84f6e
Testing the file type again with the Bitcoin paper transaction.
If you do
python jean.py 54e48e5f5c656b26c3bca14a8c95aa583d07ebe84dde3b7dd4a78f4e4186e713 > output
and then do,
file -b output
You will get:
PDF document, version 1.4
For:
python script.py 7379ab5047b143c0b6cfe5d8d79ad240b4b4f8cced55aa26f86d1d3d370c0d4c > output
file -b output
you should get
GPG symmetrically encrypted data (CAST5 cipher)
3 Merging multiple transactions into one file:
Download http://gateway.glop.me/ipfs/QmafUK8hYKztKD3hNNzF4EsW3N5nUcNvHZ4auEidjLkqJd/jean2.py
and http://gateway.glop.me/ipfs/QmY7D4bgMtq3Ysuso94ATdJgLx5YEFSgT3NTJLCeknU4cf/tx_list.txt
If you 'follow the change' as we did above you will arrive at the 130 transactions (which are also printed out in the first message). Take all these transactions and save them into text file called tx_list.txt.
Then do,
python jean2.py tx_list.txt > cables.zip
you will get a zipfile with the cables.
Update:
4 Detecting file headers:
https://codepaste.net/qjafvb
http://gateway.glop.me/ipfs/Qmf8gcVAv9VwX6i7xWnMg9kj9HWrnHMZVtLF8q3Z9AWto7/jean3.py
Setup:
Download TrID http://mark0.net/soft-trid-e.html
chmod +x trid
Download tridupdate.py http://mark0.net/download/tridupdate.zip
python tridupdate.py
TrID and get_files_in_wallet.py should be in the same directory.
Example:
python get_files_in_wallet.py 1C3WStWpfCmsoG5WmDeaYSwAeEY1ncWQoh
It should find a PDF. It will save all decoded data from transactions, a list of tx ids and a list of tx ids that include file headers.
python get_files_in_wallet.py 16jv3REqedeiTK8dzygyirNLWiP5gAc2KX
It should find two PGP files.
python jean3.py 1HB5XMLmzFVj8ALj6mfBsbifRoD4miY36v
Will print all file headers in Wikileaks' wallet.
Read more here: http://8ch.net/tech/res/679042.html
Python3 version: https://www.reddit.com/Bitcoin/comments/5dqufl/blockchain_experts_the_world_needs_your_help_the/da7mf7b/
C versions: http://gateway.glop.me/ipfs/QmRWjFfGzhtxMLdrHXeCAPFvqyrQPRebpEzpNANfhfTMxA/block-reader.c
http://gateway.glop.me/ipfs/QmQK4ac7ks7aNaL4utNqafbJR1hXBGXoHQ3GPsA7kJdTBL/bcrdr.c
https://codepaste.net/gh3mui
https://codepaste.net/f1ca5s
https://codepaste.net/2kk75e
https://codepaste.net/4yn1vy
https://codepaste.net/dm1hyo
Block-finders (require RPC account):
http://gateway.glop.me/ipfs/QmQ951RnjyKtYVoy3XjFqHRBkQABkh5oeq7VQWr7VC2Cn5/block-data-finder.py
http://gateway.glop.me/ipfs/Qmadgc4aKVPQfGhUT8bQ11PsvXArvmxR9pVdgznYZvT1CD/block-opreturn-finder.py
Usage:
Scrape OP_RETURN between 15/10/2016 00:00:01 through 24/10/2016 23:59:59
python block-opreturn-finder.py blocks 434304 435711
Scrape blocks for data in outputs between 15/10/2016 00:00:01 through 24/10/2016 23:59:59
python block-data-finder.py blocks 434304 435711
submitted by 438498967 to WhereIsAssange [link] [comments]

[uncensored-r/Bitcoin] ? Lightning Network Megathread ?

The following post by codedaway is being replicated because some comments within the post(but not the post itself) have been silently removed.
The original post can be found(in censored form) at this link:
np.reddit.com/ Bitcoin/comments/7pwna9
The original post's content was as follows:
This post is a collaboration with the Bitcoin community to create a one-stop source for Lightning Network information.
There are still questions in the FAQ that are unanswered, if you know the answer and can provide a source please do so!

?What is the Lightning Network? ?

Explanations:

Image Explanations:

Specifications / White Papers

Videos

Lightning Network Experts on Reddit

  • starkbot - (Elizabeth Stark - Lightning Labs)
  • roasbeef - (Olaoluwa Osuntokun - Lightning Labs)
  • stile65 - (Alex Akselrod - Lightning Labs)
  • cfromknecht - (Conner Fromknecht - Lightning Labs)
  • RustyReddit - (Rusty Russell - Blockstream)
  • cdecker - (Christian Decker - Blockstream)
  • Dryja - (Tadge Dryja - Digital Currency Initiative)
  • josephpoon - (Joseph Poon)
  • fdrn - (Fabrice Drouin - ACINQ )
  • pmpadiou - (Pierre-Marie Padiou - ACINQ)

Lightning Network Experts on Twitter

  • @starkness - (Elizabeth Stark - Lightning Labs)
  • @roasbeef - (Olaoluwa Osuntokun - Lightning Labs)
  • @stile65 - (Alex Akselrod - Lightning Labs)
  • @bitconner - (Conner Fromknecht - Lightning Labs)
  • @johanth - (Johan Halseth - Lightning Labs)
  • @bvu - (Bryan Vu - Lightning Labs)
  • @rusty_twit - (Rusty Russell - Blockstream)
  • @snyke - (Christian Decker - Blockstream)
  • @JackMallers - (Jack Mallers - Zap)
  • @tdryja - (Tadge Dryja - Digital Currency Initiative)
  • @jcp - (Joseph Poon)
  • @alexbosworth - (Alex Bosworth - yalls.org)

Medium Posts

Learning Resources

Books

Desktop Interfaces

Web Interfaces

Tutorials and resources

Lightning on Testnet

Lightning Wallets

Place a testnet transaction

Altcoin Trading using Lightning

  • ZigZag - Disclaimer You must trust ZigZag to send to Target Address

Lightning on Mainnet

  • https://...
submitted by censorship_notifier to noncensored_bitcoin [link] [comments]

A Plugin Framework for Litecoin Qt

Introduction

Litecoin provides an infrastructure for efficient payments and immutable data storage. While the infrastructure itself is revolutionary, we are still far from unleashing its full potential. Many more applications can be built around Litecoin. In order to facilitate easier application development and adoption, I propose a plugin framework based on the existing Litecoin Qt program.
Litecoin Qt is an "official" full Litecoin node with an easy to use graphical user interface (GUI) that can be used by those who are not technically savvy. It mainly functions as a Litecoin wallet to send and receive Litecoins.
As a wallet, Litecoin Qt does not really provide much advantage compared with lightweight wallets like Electrum-LTC. However, Litecoin Qt is the only available Litecoin full node with a nice GUI, and these properties make Litecoin Qt the ideal platform for supporting a plugin framework to host applications because many applications will need Litecoin blockchain data and an easy to use graphical interface to be suitable for normal users.
I list a few interesting example applications here and hope these will stimulate more ideas.

Example Applications

USDT

USDT is a token on top of Bitcoin blockchain and backed by USD. It is used by some major exchanges like Poloniex and Bitfinex. Technically, all data related to the token is stored on Bitcoin blockchain using OP_RETURN transactions. However, it is obvious that Litecoin is much more suitable for this job because of its much lower transaction fee and faster confirmation.
While USDT makes USD much more usable on the Internet, it does not really have an easy to use wallet. I think a plugin for Litecoin Qt that scans OP_RETURN data and finds USDT related transactions and makes OP_RETURN transactions to send USDT can become an easy to use wallet.
Many similar plugins depending on OP_RETURN transactions can be built. For example, a plugin can be used to send holiday (e.g. Valentine's day) wishes to the Litecoin blockchain, which thus lasts as long as Litecoin itself.

Efficient and decentralized CoinJoin

CoinJoin is an effective way for providing fungibility and anonymity to Litecoin users. CoinJoin services for Bitcoin are already available through centralized websites like https://bitmixer.io/ or decentralized standalone programs like https://github.com/JoinMarket-Org/joinmarket. While a decentralized program provides better anonymity and security, it incurs a cumbersome downloading and installation process, limiting its usage.
Compared with a standalone program, a CoinJoin plugin on Litecoin Qt is more available and much easier to install and use. Litecoins can be easily transferred from the Litecoin Qt wallet to the CoinJoin network for mixing and back to other addresses in the wallet with just one click.
Another advantage of making such a CoinJoin function a plugin instead of part of Litecoin Qt itself is that a plugin avoids potential legal issues. Some governments could potentially ban coins that provide complete anonymity within their protocol. Such a plugin avoids this issue and provides good anonymity and also keeps the Litecoin protocol simple.

Easier service consumption

Service providers like music streaming companies can provide plugins for users to easily pay for their services. Registration is not needed, and authentication can be done by automatically signing a token provided by the service provider using an address' private key in the wallet. Payments can be finished by simply clicking one button, and then Litecoins will be transferred to the service provider.

Implementation

Implementation of such a plugin framework requires a capable and secure plugin language. A good candidate is Lua. Lua is a widely used plugin language because of its easiness to embed, fast execution, and short learning curve.
Communication between the plugins and Litecoin Qt can be done through either Litecoin Qt's standard RPCs or C++ APIs specifically exposed by the plugin framework.
In order to forbidden plugins stealing wallets, plugins need to be sandboxed so that visiting local file systems (excluding locations for temporary files) should be disabled. While this is difficult for many script languages including Python, Lua can achieve it relatively easily. Beside that, only open source plugins shall be trusted until we have enough confidence on the framework's security.
This gives an example application with Lua plugins: https://john.nachtimwald.com/2014/08/16/extending-an-application-with-lua-plugins/. A Lua plugin for Litecoin Qt should be similar.
submitted by xinxi to litecoin [link] [comments]

State of the Redd-Nation :: May 23, 2016

Reddcoin Weekly Development Update

Welcome again Reddheads to another weekly update of Reddcoin Development.
This past week has achieved quite a few updates.

New v2.0 Wallet and testing progress

During this last week, I have been performing testing on the switch-over logic from v3 to v4 blocks on testnet using both the version 1.4.1 wallet and version 2.0.0.0 wallet. Results have been better than expected and I am very happy with the progress so far.

Network Testing with Super-Majority

The recent testing with testnet was performed by setting the super-majority to 510/1000 blocks (51%). That is, when there have been 510 v4 blocks created in the last 1000 blocks, the rules for v4 blocks are enabled (Enforce DER Signatures). v3 blocks will then be rejected by the network.
On mainnet, the setting will be updated to be a Super-Majority 85%

Staking with different versions

Wallet Staking Block Ver Accepted by v1.4.1 Accepted by v2.0.0 Rejected by v2.0.0
Ver 1.4.1 YES v3 YES NO YES
Ver 2.0.0 YES v4 YES YES NO
SOME NOTES: After the switch of Super-Majority completes, version 1.4.1 nodes will continue to stake however, the network will reject those blocks. This is expected behaviour.

Transferring between versions

v1.4.1 v2.0.0
v1.4.1 YES YES
v2.0.0 YES YES
SOME NOTES Current testing of transferring coins between different wallet versions has been successful. Current indications are that if you are not staking, you will be able to continue to use v1.4.1 wallets. More testing to be done.
If you have any questions, or would like to know more on this, please let me know.

Translations

Translations continue to be updated which is great to see. Thank you to all those who are contributing their time and effort.
@Serkan34 continues to dominate on the European languages.
This is the running list of desired languages, and if you like you can also check the overall running list on transiflex here.

Wallet Recovery

As mentioned last week, wallet recover is no easy task. There are a few tools around on the net that can help, but it is no way guaranteed to provide 100% recovery.
So, it is important that you get in the habit of routinely backing up your wallet.dat file
For the second time in as many weeks, I have used the utility called pywallet that in my case has done a reasonable job to recover broken wallets. It is a python based tool that allows some low level manipulation of wallet files.
In this second case, it involved recovering the private keys from a testnet wallet (100K keys in total). The wallet.dat would load into Reddcoin-Qt, but then the application would sit spinning its wheels, without error, and no way to dump. Running the QT application with -salvage wallet would truncate the number of addresses that should have been available ion the wallet.
So, using the pywallet, I was able to load up read the available privatekeys in the wallet and dump the keys to a text file. This essentially was the same as last week. 100% of the privkeys were salvageable
I still have some problems importing those directly into a new wallet using the pywallet tool, and with such a large number of private keys, manual input was not an option.
I wrote a little script to pull the private keys from a text file and send a importprivatekey RPC command to the wallet. A little slower, but none the less it was effective and successful.
After starting the wallet with -rescan, it brought everything upto date with those associated addresses and their tx's into the wallet.

Large number of Micro Transactions on mainnet

Over the course of several weeks, there have been a number of instances where a large number of small transactions were broadcast onto the network.
It was brought up in a couple of forum messages on reddit and reddcointalk, so I thought it might be worthwhile just to touch on it again here.
Firstly, I would like to say, this is similar to reports that occurred on Bitcoin network where small transactions were sent to fill blocks. So I was interested to monitor just how such behaviours would occur on Reddcoins Mainnet and what the effects might be.
Reddcoin mainnet has in effect a 10x larger capacity that Bitcoin. The blocksize for Reddcoin is 1M, and the block generation time is targeted every minute (Bitcoin is 1M blocks every 10 minutes).
In the 'worst' case the maximum capacity that these transactions took on the network, was to occupy less than 25% of each block (about 230K in total)
With the number of transactions that were occurring, there were at times excesses of transactions that spilled over into subsequent blocks (again, only filling each of those to 25% capacity). When this occurred,e there were runs of up to 10-12 blocks that were filled.
In the current state of the network, where volume of transactions generally is low, it has been a good exercise to monitor the behaviour of sudden peak demand. I didnt hear of nay cases where normal transactions or staking were affected.
Thats is not to say, we are immune, If the normal operating capacity of a block was 50% or more, this would be more a concern and there could be an impact to the time of confirmation of a transaction.
Suffice to say, the current side effect is, a number of you may have a lot of small transactions sitting in your addresses. I would not be too concerned at this point, and would suggest to let the PoSV staking take care of those in due course (it will take a while to get selected due to the size), or in your next transfer, manually select a few to send them on their way.

Performance of PoSV

One of the things that has interested me for a long time with Reddcoin is how the POS mechanism behaves over time.
PoSV is unique amongst the POS crypto-currencies in the way that the weighting mechanism works, and in the way the stake reward is weighted depending on how long the coins have had to age.
A lot of things can influence the amount for each of your stake rewards,
Working with @deadpool, and @reddibrek, they have been trying to define it is simple to understand terms
But I am also studying the network in much greater detail in relation to a post on the ReddcoinTalk forum regarding PoSV v2.
This was the original statement made about 1 year ago, and I believe there is merit in re-visiting this PoSV v2 proposal. It provides and extra incentive to everyone who continues to stake, and in doing so get a bigger percentage of return.
So in my spare time I have been extracting information about the current network, the blockchain and the metrics of how it is functioning, what returns stakers currently get and whether this remains a viable option.

Getting involved

We are a global community, and cross many borders but boundaries do not need to hinder us.
The crypto currency world has not reached its tipping point yet, but when it does, it is sure to escalate at an amazing rate. There are going to be many ups and downs, and an interesting ride for sure.
If you would like to get involved and dont know where to start, reach out and we will see where you can jump in @Deadpool has a great Trello site going with activities that need looking at.

In Closing

There is still plenty to do, but we are getting closer and I look forward to another productive week.
So where ever you are, enjoy your week ahead
Keep on staking!
x-posted (https://www.reddcointalk.org/topic/839/state-of-the-redd-nation-may-23-2016)
submitted by cryptognasher to reddCoin [link] [comments]

RetroShare Feature List

Information directly from Team Retroshare DevBlog:
RetroShare Features:
HowTo test RetroShare
ChatServer / IntroServer for making new Friends
RetroShare on Embedded Devices
From Unofficial Wiki
RetroShare on FreenodeIRC
RetroShare on Twitter
RetroShare on GitHub and SourceForge
Plugin Structure
How to Contribute
If you have questions, feel free to ask!
submitted by cavebeat to retroshare [link] [comments]

Bitcoin JSON-RPC Tutorial 1 Python Bitcoin Tutorial for Beginners Programming Bitcoin-qt using the RPC api (1 of 6) Bitcoin JSON-RPC Tutorial 5 - Your First Calls Bitcoin JSON-RPC Tutorial 2 - VPS Setup

python-bitcoinlib. This Python3 library provides an easy interface to the bitcoin data structures and protocol. The RPC interface, bitcoin.rpc, is designed to work with Bitcoin Core v0.16.0. Older versions may work but there do exist some incompatibilities. Structure. For instance this example creates a transaction spending a pay-to See the proper money handling page for notes on avoiding rounding errors when handling bitcoin values. Languages Python. python-jsonrpc is the official JSON-RPC implementation for Python. It automatically generates Python methods for RPC calls. However, due to its design for supporting old versions of Python, it is also rather inefficient. Python interface to bitcoin's JSON-RPC API. Contribute to jgarzik/python-bitcoinrpc development by creating an account on GitHub. Here are the examples of the python api bitcoin.rpc.JSONRPCException taken from open source projects. By voting up you can indicate which examples are most useful and appropriate. Bitcoin RPC from Python. ('Failed to connect for remote procedure call.') hadFailedConnections = True print ("Couldn't connect for remote procedure call, will sleep for ten seconds and then try again ({} For litecoin, for example (and the litecoind reference client), just change the RPC port to 19332 for litecoin testnet, and 9332 for

[index] [7030] [25227] [13968] [20397] [240] [29241] [13974] [19175] [16044] [12323]

Bitcoin JSON-RPC Tutorial 1

Bitcoin JSON-RPC tutorial. Set up your bitcoin.conf file and create custom settings with bitcoind. BTC: 1NPrfWgJfkANmd1jt88A141PjhiarT8d9U. Bitcoin JSON-RPC Tutorial 2 - VPS Setup - Duration: 6:28. m1xolyd1an 15,489 views. ... Google Python Class Day 1 Part 1 - Duration: 51:37. Google Developers 2,982,619 views. Bitcoin JSON-RPC Tutorial 4 - Command Line Interface - Duration: 5:14. m1xolyd1an 10,986 views. 5:14. Investigation of the effect of Cracks on Vibration Parameters of A Cantilever Beam WEBINAR ... Bitcoin JSON-RPC Tutorial 5 - Your First Calls - Duration: 10:06. m1xolyd1an 11,838 views. ... Python Bitcoin Tutorial for Beginners - Duration: 18:04. m1xolyd1an 70,824 views. Bitcoin JSON-RPC tutorial. How to set up bitcoind on a VPS. BTC: 1NPrfWgJfkANmd1jt88A141PjhiarT8d9U.

Flag Counter