Bitcoin Forum
May 24, 2024, 06:42:12 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Alias for main address  (Read 90 times)
axoncluster (OP)
Newbie
*
Offline Offline

Activity: 3
Merit: 0


View Profile
January 19, 2023, 10:08:02 AM
 #1

Hello,

It's my first post here, nice to see so active forum.

I have been researching multiple days, with no luck, so I have decided to ask here.

I want to create a service that supports bitcoin and few other coins with ability to assign wallet addresses to each new registered user in order to receive funds, but all funds receive would reside on some kind of 'main' wallet?

Is that doable? I have seen HD wallets, and multi-sig wallets, but I'm not sure if I send certain amount of crypto to child wallet if it will be forwarded to main wallet.

I hope you understand what I want to achieve, and probably someone has done something similar already here.

Thanks a lot!
mocacinno
Legendary
*
Offline Offline

Activity: 3402
Merit: 4984


https://merel.mobi => buy facemasks with BTC/LTC


View Profile WWW
January 19, 2023, 10:14:42 AM
Merited by pooya87 (2), ABCbits (2)
 #2

A HD wallet would be fine... Derive as many addresses as you want from the master public key, and when you import the master private key (or the seed phrase) into a wallet like electrum, you'll be able to spend all unspent outputs funding all addresses derived from the master public key.

For an online service, you should probably create a seed phrase on an offline machine using (for example) electrum, then look at the master PUBLIC key and move this public key to your online machine for derivation of addresses, it'll be much safer since your seed phrase and your master private key never touched an online machine. Offcourse, if you do this, you'll have to batch withdrawals and run them manually a couple times a day. You'll need to sign the batch withdrawal transaction on your offline machine aswell, but you'll sleep much better knowing no private key of yours is available on any online machine.

By the way, the way you describe your problem makes it sound more complex than it actually is... There's no need to talk about child wallets, main wallets, forewarding... You just create a seed phrase (and in the background a master private key), put the master public key on your webserver for address derivation of new users and that's it. Only the person with the seed phrase or the master private key can spend those funds. The unspent outputs are safe while funding the addresses belonging to your users. No need to foreward or create other wallets.

█▀▀▀











█▄▄▄
▀▀▀▀▀▀▀▀▀▀▀
e
▄▄▄▄▄▄▄▄▄▄▄
█████████████
████████████▄███
██▐███████▄█████▀
█████████▄████▀
███▐████▄███▀
████▐██████▀
█████▀█████
███████████▄
████████████▄
██▄█████▀█████▄
▄█████████▀█████▀
███████████▀██▀
████▀█████████
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
c.h.
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▀▀▀█











▄▄▄█
▄██████▄▄▄
█████████████▄▄
███████████████
███████████████
███████████████
███████████████
███░░█████████
███▌▐█████████
█████████████
███████████▀
██████████▀
████████▀
▀██▀▀
OmegaStarScream
Staff
Legendary
*
Offline Offline

Activity: 3486
Merit: 6145



View Profile
January 19, 2023, 10:18:11 AM
 #3

The funds can't automatically move on their own If that's what you're asking but yes, what you're trying to do is doable.

From my understanding, you're simply trying to do what every exchange or centralized service is already doing:

1. Assign an address to the registered user (in your database).
2. You detect the payment when the user makes a deposit.
3. You update your user's balance in the database.
4. Send (or batch) multiple users deposits to a hot wallet.
5. Use that hot wallet to later process withdrawals.
6. Update your balance records when the withdrawal is successful.

█▀▀▀











█▄▄▄
▀▀▀▀▀▀▀▀▀▀▀
e
▄▄▄▄▄▄▄▄▄▄▄
█████████████
████████████▄███
██▐███████▄█████▀
█████████▄████▀
███▐████▄███▀
████▐██████▀
█████▀█████
███████████▄
████████████▄
██▄█████▀█████▄
▄█████████▀█████▀
███████████▀██▀
████▀█████████
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
c.h.
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▀▀▀█











▄▄▄█
▄██████▄▄▄
█████████████▄▄
███████████████
███████████████
███████████████
███████████████
███░░█████████
███▌▐█████████
█████████████
███████████▀
██████████▀
████████▀
▀██▀▀
mocacinno
Legendary
*
Offline Offline

Activity: 3402
Merit: 4984


https://merel.mobi => buy facemasks with BTC/LTC


View Profile WWW
January 19, 2023, 10:20:07 AM
 #4

The funds can't automatically move on their own If that's what you're asking but yes, what you're trying to do is doable.

From my understanding, you're simply trying to do what every exchange or centralized service is already doing:

1. Assign an address to the registered user (in your database).
2. You detect the payment when the user makes a deposit.
3. You update your user's balance in the database.
4. Send (or batch) multiple users deposits to a hot wallet.
5. Use that hot wallet to later process withdrawals.
6. Update your balance records when the withdrawal is successful.

IMHO, the moving of funds to a hot wallet isn't even necessary, unless it's for unspent output consolidation in order to safe on fees.

█▀▀▀











█▄▄▄
▀▀▀▀▀▀▀▀▀▀▀
e
▄▄▄▄▄▄▄▄▄▄▄
█████████████
████████████▄███
██▐███████▄█████▀
█████████▄████▀
███▐████▄███▀
████▐██████▀
█████▀█████
███████████▄
████████████▄
██▄█████▀█████▄
▄█████████▀█████▀
███████████▀██▀
████▀█████████
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
c.h.
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▀▀▀█











▄▄▄█
▄██████▄▄▄
█████████████▄▄
███████████████
███████████████
███████████████
███████████████
███░░█████████
███▌▐█████████
█████████████
███████████▀
██████████▀
████████▀
▀██▀▀
NeuroticFish
Legendary
*
Offline Offline

Activity: 3682
Merit: 6406


Looking for campaign manager? Contact icopress!


View Profile
January 19, 2023, 10:20:59 AM
 #5

You seem to be forgetting that a wallet can consist of many addresses.
So you can assign for each user different deposit addresses (they won't have private keys), but you are still the master of the whole wallet. And you'll move the funds away of the various addresses when you need that, it's not important to empty them at sight.
Hence a HD wallet can do the job. Maybe you look into something like BTCPay; maybe it already does what you want to implement.

As already said, be careful on what/how big funds you keep in a hot wallet.

█████████████████████████
████▐██▄█████████████████
████▐██████▄▄▄███████████
████▐████▄█████▄▄████████
████▐█████▀▀▀▀▀███▄██████
████▐███▀████████████████
████▐█████████▄█████▌████
████▐██▌█████▀██████▌████
████▐██████████▀████▌████
█████▀███▄█████▄███▀█████
███████▀█████████▀███████
██████████▀███▀██████████
█████████████████████████
.
BC.GAME
▄▄░░░▄▀▀▄████████
▄▄▄
██████████████
█████░░▄▄▄▄████████
▄▄▄▄▄▄▄▄▄██▄██████▄▄▄▄████
▄███▄█▄▄██████████▄████▄████
███████████████████████████▀███
▀████▄██▄██▄░░░░▄████████████
▀▀▀█████▄▄▄███████████▀██
███████████████████▀██
███████████████████▄██
▄███████████████████▄██
█████████████████████▀██
██████████████████████▄
.
..CASINO....SPORTS....RACING..
█░░░░░░█░░░░░░█
▀███▀░░▀███▀░░▀███▀
▀░▀░░░░▀░▀░░░░▀░▀
░░░░░░░░░░░░
▀██████████
░░░░░███░░░░
░░█░░░███▄█░░░
░░██▌░░███░▀░░██▌
░█░██░░███░░░█░██
░█▀▀▀█▌░███░░█▀▀▀█▌
▄█▄░░░██▄███▄█▄░░▄██▄
▄███▄
░░░░▀██▄▀


▄▄████▄▄
▄███▀▀███▄
██████████
▀███▄░▄██▀
▄▄████▄▄░▀█▀▄██▀▄▄████▄▄
▄███▀▀▀████▄▄██▀▄███▀▀███▄
███████▄▄▀▀████▄▄▀▀███████
▀███▄▄███▀░░░▀▀████▄▄▄███▀
▀▀████▀▀████████▀▀████▀▀
axoncluster (OP)
Newbie
*
Offline Offline

Activity: 3
Merit: 0


View Profile
January 19, 2023, 10:24:02 AM
 #6

Huh, thanks for fast replies.

So basically this can be achieved for almost any coin in this way?

Husires
Legendary
*
Offline Offline

Activity: 1596
Merit: 1287


View Profile WWW
January 19, 2023, 01:13:50 PM
 #7

So basically this can be achieved for almost any coin in this way?

Before getting to more custom options, think about additional information such as
  • What is the expected number of new users?
  • How much money is planned to be deposited?
  • How much deposits are users asking for?
  • Does each new user need one address or a number of addresses?
  • The nature of the activity you do? In other words, does your site provide additional services, and therefore you need to build everything in a coherent manner, or is it a payment system?
  • Is the user allowed to withdraw his money or not?
  • your technical expertise?

There are several open source solutions that we can refer to, but if your site is large, it is better to hire a developer in order to avoid any holes in the hot wallet.



This is for Bitcoin, and it is supposed to be the same things for most of Altcoins, with some differences such as in Ripple (XRP,) you have one address, and each user gets a unique tag for each transaction or account (it would be easier if you did not have any technical knowledge).
axoncluster (OP)
Newbie
*
Offline Offline

Activity: 3
Merit: 0


View Profile
January 19, 2023, 02:36:37 PM
 #8

So basically this can be achieved for almost any coin in this way?

Before getting to more custom options, think about additional information such as
  • What is the expected number of new users?
  • How much money is planned to be deposited?
  • How much deposits are users asking for?
  • Does each new user need one address or a number of addresses?
  • The nature of the activity you do? In other words, does your site provide additional services, and therefore you need to build everything in a coherent manner, or is it a payment system?
  • Is the user allowed to withdraw his money or not?
  • your technical expertise?

There are several open source solutions that we can refer to, but if your site is large, it is better to hire a developer in order to avoid any holes in the hot wallet.



This is for Bitcoin, and it is supposed to be the same things for most of Altcoins, with some differences such as in Ripple (XRP,) you have one address, and each user gets a unique tag for each transaction or account (it would be easier if you did not have any technical knowledge).

Basically this would be used mostly for micropayments, and users inside the app can send crypto to each other without fees, only during withdrawals outside of the platform, some fees would be applied.

I'm looking right now - bitcore - which is open-source and possible solution, but not sure if it fits my use-case entirely. I think it would make all of this more complicated then it needs to be.

Basically I will be interacting with blockchain on deposit and withdrawals, all coin movements inside platform would be internal.
Husires
Legendary
*
Offline Offline

Activity: 1596
Merit: 1287


View Profile WWW
January 19, 2023, 06:14:03 PM
 #9

Basically this would be used mostly for micropayments, and users inside the app can send crypto to each other without fees, only during withdrawals outside of the platform, some fees would be applied.

So, you need to manage central databases. inside updating of those database (send money to others inside website) is not related to Bitcoin, and the role of Bitcoin is limited to confirming the transaction, and update main balance.
You do not need altcoin, but all you need is to use the lightning network, as it will be close to zero.

You can pool all of these transactions to a single address in cold storage or from a Lightning Network channel.
To withdraw, if your site is small, it is better to do it manually, including reducing risks.

The best open source solution is https://docs.btcpayserver.org
rat03gopoh
Hero Member
*****
Offline Offline

Activity: 2086
Merit: 641


Your keys your responsibility


View Profile WWW
January 20, 2023, 10:00:29 AM
 #10

Basically this would be used mostly for micropayments, and users inside the app can send crypto to each other without fees, only during withdrawals outside of the platform, some fees would be applied.

It's like a custodial wallet on a centralized exchange as Omega explained, supposedly it should also work for almost all types of altcoins.
Don't know if there are any such wallet services around here. If your service is gonna be large scale, you should get your own developer for regular maintenance and round-the-clock troubleshooting.

▓██   ██▓ ▒█████   █    ██  ██▀███      ██ ▄█▀▓█████▓██   ██▓  ██████   
 ▒██  ██▒▒██▒  ██▒ ██  ▓██▒▓██ ▒ ██▒    ██▄█▒ ▓█   ▀ ▒██  ██▒▒██    ▒   
  ▒██ ██░▒██░  ██▒▓██  ▒██░▓██ ░▄█ ▒   ▓███▄░ ▒███    ▒██ ██░░ ▓██▄     
  ░ ▐██▓░▒██   ██░▓▓█  ░██░▒██▀▀█▄     ▓██ █▄ ▒▓█  ▄  ░ ▐██▓░  ▒   ██▒ 
  ░ ██▒▓░░ ████▓▒░▒▒█████▓ ░██▓ ▒██▒   ▒██▒ █▄░▒████▒ ░ ██▒▓░▒██████▒▒ 
   ██▒▒▒ ░ ▒░▒░▒░ ░▒▓▒ ▒ ▒ ░ ▒▓ ░▒▓░   ▒ ▒▒ ▓▒░░ ▒░ ░  ██▒▒▒ ▒ ▒▓▒ ▒ ░ 
 ▓██ ░▒░   ░ ▒ ▒░ ░░▒░ ░ ░   ░▒ ░ ▒░   ░ ░▒ ▒░ ░ ░  ░▓██ ░▒░ ░ ░▒  ░ ░ 
 ▒ ▒ ░░  ░ ░ ░ ▒   ░░░ ░ ░   ░░   ░    ░ ░░ ░    ░   ▒ ▒ ░░  ░  ░  ░   
 ░ ░         ░ ░     ░        ░        ░  ░      ░  ░░ ░           ░   
 ░ ░                                                 ░ ░                 
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀▄▄██▀▀⠀▄▄▄⠀⠀▀▀█▄▄▄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀▄█▀▀⠀⠀⠀⠀⠀███⠀⠀⠀⠀⠀⠀⠀▐▀█▄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀▀⠀⠀⠀⠀⠀⠀⠀⠀▐████████████⠀⠀█⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀▄▄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀██████████████▄⠀⠀⠀⠀⠀⠀⠀⠀⠀▄⠀▄⠀⠀⠀⠀⠀
⠀⠀██▀⠀⠀⠀⠀⠀⠀▄▄▄⠀⠀⠀⠀⠀⠀▀█████████████⠀⠀⠀⠀⠀⠀⠀▐██████▄▄⠀⠀⠀
⠀⠀▐⠀⠀⠀⠀⠀⠀⠀⠀█▄██▄⠀⠀⠀⠀⠀⠀▀███████████⠀▄⠀⠀⠀⠀⠀⠀██⠀⠀⠀██▌⠀⠀
⠀⠀⠀⠀⠀⠀▄⠀⠀⠀⠀███▄▄▌⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀▀█▀⠀⠀█▌⠀⠀⠀⠀██▀▀██▀⠀⠀⠀
⠀⠀⠀⠀⠀█▌⠀⠀⠀▐▀███▀▄█▄▄▄▄▄▄▄▄▄▄⠀⠀⠀⠀⠀⠀▀█▌⠀⠀⠀⠀▄██▌⠀⠀▄██⠀⠀⠀
⠀⠀⠀⠀⠀█▌⠀⠀⠀⠀███⠀⠀██▀██▀██▀██▀████▄⠀⠀██⠀⠀⠀⠀⠀⠀█▀▀█▀▀▀⠀⠀⠀
⠀⠀⠀⠀▐██⠀⠀⠀⠀█▀⠀⠀⠀⠀▀⠀▀▀⠀▀▀⠀▀█⠀█▀█▀██⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀█▌⠀⠀⠀⠀`⠀⠀▄⠀▐██████▄▄⠀⠀▀▐▀██▀██⠀⠀⠀⠀⠀⠀⠀▄██▀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀▀█⠀⠀⠀⠀⠀⠀██⠀█⠀⠀▀██████▄▄⠀⠀█▀⠀▀⠀⠀⠀⠀⠀⠀███▀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀▄⠀⠀██⠀▄⠀⠀⠀`▀███⠀█⠀▀▀██████▄⠀⠀⠀██⠀⠀⠀▄███⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀█⠀⠀⠀▀⠀⠀▀▀▄▄⠀⠀▀████▀▄⠀▀██████▄▄▄█▄█████⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀▀▌⠀⠀⠀⠀⠀⠀⠀⠀▀▌⠀⠀⠀▐███▄█⠀▄⠀▀▀█████████▀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀█⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀█⠀⠀⠀⠀⠀██████▄▀⠀⠀▀▀▀▀▀⠀⠀▄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀▄⠀⠀⠀⠀⠀▌▀▀⠀⠀▄⠀⠀⠀⠀⠀⠀⠀▀█⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀▀▀███▀▀⠀⠀▐█⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
▓██   ██▓ ▒█████   █    ██  ██▀███      ██▀███  ▓█████   ██████  ██▓███   ▒█████   ███▄    █   ██████  ██▓ ▄▄▄▄    ██▓ ██▓     ██▓▄▄▄█████▓▓██   ██▓
 ▒██  ██▒▒██▒  ██▒ ██  ▓██▒▓██ ▒ ██▒   ▓██ ▒ ██▒▓█   ▀ ▒██    ▒ ▓██░  ██▒▒██▒  ██▒ ██ ▀█   █ ▒██    ▒ ▓██▒▓█████▄ ▓██▒▓██▒    ▓██▒▓  ██▒ ▓▒ ▒██  ██▒
  ▒██ ██░▒██░  ██▒▓██  ▒██░▓██ ░▄█ ▒   ▓██ ░▄█ ▒▒███   ░ ▓██▄   ▓██░ ██▓▒▒██░  ██▒▓██  ▀█ ██▒░ ▓██▄   ▒██▒▒██▒ ▄██▒██▒▒██░    ▒██▒▒ ▓██░ ▒░  ▒██ ██░
  ░ ▐██▓░▒██   ██░▓▓█  ░██░▒██▀▀█▄     ▒██▀▀█▄  ▒▓█  ▄   ▒   ██▒▒██▄█▓▒ ▒▒██   ██░▓██▒  ▐▌██▒  ▒   ██▒░██░▒██░█▀  ░██░▒██░    ░██░░ ▓██▓ ░   ░ ▐██▓░
  ░ ██▒▓░░ ████▓▒░▒▒█████▓ ░██▓ ▒██▒   ░██▓ ▒██▒░▒████▒▒██████▒▒▒██▒ ░  ░░ ████▓▒░▒██░   ▓██░▒██████▒▒░██░░▓█  ▀█▓░██░░██████▒░██░  ▒██▒ ░   ░ ██▒▓░
   ██▒▒▒ ░ ▒░▒░▒░ ░▒▓▒ ▒ ▒ ░ ▒▓ ░▒▓░   ░ ▒▓ ░▒▓░░░ ▒░ ░▒ ▒▓▒ ▒ ░▒▓▒░ ░  ░░ ▒░▒░▒░ ░ ▒░   ▒ ▒ ▒ ▒▓▒ ▒ ░░▓  ░▒▓███▀▒░▓  ░ ▒░▓  ░░▓    ▒ ░░      ██▒▒▒
 ▓██ ░▒░   ░ ▒ ▒░ ░░▒░ ░ ░   ░▒ ░ ▒░     ░▒ ░ ▒░ ░ ░  ░░ ░▒  ░ ░░▒ ░       ░ ▒ ▒░ ░ ░░   ░ ▒░░ ░▒  ░ ░ ▒ ░▒░▒   ░  ▒ ░░ ░ ▒  ░ ▒ ░    ░     ▓██ ░▒░
 ▒ ▒ ░░  ░ ░ ░ ▒   ░░░ ░ ░   ░░   ░      ░░   ░    ░   ░  ░  ░  ░░       ░ ░ ░ ▒     ░   ░ ░ ░  ░  ░   ▒ ░ ░    ░  ▒ ░  ░ ░    ▒ ░  ░       ▒ ▒ ░░
 ░ ░         ░ ░     ░        ░           ░        ░  ░      ░               ░ ░           ░       ░   ░   ░       ░      ░  ░ ░            ░ ░   
 ░ ░                                                                                                            ░                           ░ ░     
NotATether
Legendary
*
Offline Offline

Activity: 1610
Merit: 6758


bitcoincleanup.com / bitmixlist.org


View Profile WWW
January 20, 2023, 10:25:09 AM
 #11

Don't know if there are any such wallet services around here. If your service is gonna be large scale, you should get your own developer for regular maintenance and round-the-clock troubleshooting.

You mean developers (and someone to look after all of them so you don't have to do it).

There are all kinds of circumstances that can hinder a dev's work so that you are left with 1/3 of a dev instead of the whole thing. Don't fall into that trap. Every decent service has at least a few devs around for maintenance work.

.
.BLACKJACK ♠ FUN.
█████████
██████████████
████████████
█████████████████
████████████████▄▄
░█████████████▀░▀▀
██████████████████
░██████████████
████████████████
░██████████████
████████████
███████████████░██
██████████
CRYPTO CASINO &
SPORTS BETTING
▄▄███████▄▄
▄███████████████▄
███████████████████
█████████████████████
███████████████████████
█████████████████████████
█████████████████████████
█████████████████████████
███████████████████████
█████████████████████
███████████████████
▀███████████████▀
█████████
.
Pages: [1]
  Print  
 
Jump to:  

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