npx nuxi init -t github:nuxt-ui-pro/saas ao-full-stack
pnpm i @permaweb/aoconnect @vue-macros/nuxt
Stable Diffusion is an AI art generation model similar to DALLE-2. | |
Here are some prompts for generating art with Stable Diffusion. | |
Example: | |
- A ghostly apparition drifting through a haunted mansion's grand ballroom, illuminated by flickering candlelight. Eerie, ethereal, moody lighting. | |
- portait of a homer simpson archer shooting arrow at forest monster, front game card, drark, marvel comics, dark, smooth | |
- pirate, deep focus, fantasy, matte, sharp focus | |
- red dead redemption 2, cinematic view, epic sky, detailed, low angle, high detail, warm lighting, volumetric, godrays, vivid, beautiful | |
- a fantasy style portrait painting of rachel lane / alison brie hybrid in the style of francois boucher oil painting, rpg portrait |
#!/usr/bin/env python3 | |
import bitarray | |
from hashlib import blake2b | |
# POW Constants | |
BASE_EDGE_BITS = 24 | |
PROOFSIZE = 42; | |
# https://github.com/mimblewimble/grin/blob/cccaf984936d4792f8b6c39e6b500ad2e3f08817/core/src/pow/types.rs#L314 |
const connect = require('@0x/connect'); | |
const subproviders = require('@0x/subproviders'); | |
const utils = require('@0x/utils'); | |
const wrapper = require('@0x/web3-wrapper'); | |
const orderUtils = require('@0x/order-utils'); | |
const contractAddresses = require('@0x/contract-addresses'); | |
const handler = { | |
onUpdate: (...args) => console.log('onUpdate:', ...args), | |
onError: (...args) => console.log('onError:', ...args), | |
onClose: (...args) => console.log('onClose:', ...args), |
Mimblewimble is a blockchain protocol that improves on bitcoin's privacy and scalability by using pedersen commitments, schnorr signatures, and a novel technique called 'cut-through'. These benefits have come at a steep cost. Building transactions have thus far required interaction between the sender and receiver to create the outputs and collectively sign the transaction. We present here a method of achieving one-sided transactions while minimizing the impact on the scalability and privacy of mimblewimble.
Like bitcoin, Grin uses a UTXO model. Transactions are created by including inputs to spend, creating new outputs of equal or lesser value, and signing and building rangeproofs to verify ownership of the inputs.
Unlike bitcoin, Grin uses confidential transactions, so the inputs and outputs are pedersen commitments (r*G + v*H
). Instead of the signatures being added to the inputs, there is only one signature per transaction, which is part of the
Pool finds block 4300 - https://grinscan.net/block/4300 | |
Secondary scale = 529 | |
scale = factor = Scaling difficulty = | |
for primary pow (cuckatooN solution) where N>=31 = 2^(1+EDGEBITS-24)*N | |
for secondary pow - (cuckatoo29 solution) = variable, retargeted every block, stored as header field "secondary_scaling" | |
Example: Three workers contributed shares: | |
Worker A submitted 50 cuckaroo29 shares | |
Worker B submitted 25 cuckaroo29 shares and |
let elliptic = require('elliptic'); | |
let sha3 = require('js-sha3'); | |
let ec = new elliptic.ec('secp256k1'); | |
// let keyPair = ec.genKeyPair(); | |
let keyPair = ec.keyFromPrivate("97ddae0f3a25b92268175400149d65d6887b9cefaf28ea2c078e05cdc15a3c0a"); | |
let privKey = keyPair.getPrivate("hex"); | |
let pubKey = keyPair.getPublic(); | |
console.log(`Private key: ${privKey}`); | |
console.log("Public key :", pubKey.encode("hex").substr(2)); |
This guide is specific to getting LND 0.5-beta and Bitcoind running on Ubuntu 16.04 LTS for mainnet. It is aging rapidly and includes steps not necessary on newer versions of LND. As of April 2021 it is very out of date for bitcoind. As of December 2021 it is outdated for LND too.
Original installation guide:
This guide is broken into the following sections:
- Install
bitcoind
and set to start automatically - Install development tools and dependancies
extern crate ring; | |
use ring::aead::*; | |
use ring::pbkdf2::*; | |
use ring::rand::SystemRandom; | |
fn main() { | |
// The password will be used to generate a key | |
let password = b"nice password"; |