Bitcoin Forum
February 17, 2020, 09:49:30 AM *
News: Latest Bitcoin Core release: 0.19.0.1 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Best technical specs to generate millions of keys per second (not mining).  (Read 252 times)
loginov
Jr. Member
*
Offline Offline

Activity: 36
Merit: 14


View Profile
December 21, 2019, 11:14:02 PM
Merited by LoyceV (4), o_e_l_e_o (1), Heisenberg_Hunter (1)
 #1

I hope I have placed this technical question in the correct section. I simply do not know where else to put it.

This is a question about generating vanity addresses (not mining): generating keys until you get the result you want.

I rent a Ubuntu VPS with 6 cores. This is not a dedicated server. Currently I get a speed of about 2.8Mkeys/s.

My understanding is, that in a shared VPS model, the overall CPU and memory are shared across all users. So I have my own IP but the capability of the resources I use depends on what other users are doing (with other IP addresses). That's why my speed can vary (it has been as high as 4.5Mkeys/s and as low as 2.1Mkeys/s).

What do you think would be the most cost effective way to generate a higher number of Mkeys/s?

A dedicated server with a certain number of CPU cores (how many cores?)

And what's the difference between KVM or OpenVZ VPS's? My impression is that KVM is superior but why?

Thank you.
1581932970
Hero Member
*
Offline Offline

Posts: 1581932970

View Profile Personal Message (Offline)

Ignore
1581932970
Reply with quote  #2

1581932970
Report to moderator
1581932970
Hero Member
*
Offline Offline

Posts: 1581932970

View Profile Personal Message (Offline)

Ignore
1581932970
Reply with quote  #2

1581932970
Report to moderator
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise here.
1581932970
Hero Member
*
Offline Offline

Posts: 1581932970

View Profile Personal Message (Offline)

Ignore
1581932970
Reply with quote  #2

1581932970
Report to moderator
1581932970
Hero Member
*
Offline Offline

Posts: 1581932970

View Profile Personal Message (Offline)

Ignore
1581932970
Reply with quote  #2

1581932970
Report to moderator
pooya87
Legendary
*
Offline Offline

Activity: 1918
Merit: 2339


Remember tonight for it's the beginning of forever


View Profile
December 22, 2019, 04:04:11 AM
 #2

What do you think would be the most cost effective way to generate a higher number of Mkeys/s?

it is hard to talk about "cost effectiveness" while all you want to do is generate a vanity address. in other words even if you spend a single satoshi, it is still a high cost!

in any case a more effective way is using a strong GPU instead of CPU and doing it locally. and of course just like miners you could build a rig of GPUs to do the search so that you get a higher "hashrate". and finally the ultimate way is to build an ASIC machine that is designed to perform the specific calculations.

ETFbitcoin
Legendary
*
Offline Offline

Activity: 1918
Merit: 2202

Use SegWit and enjoy lower fees.


View Profile WWW
December 22, 2019, 07:06:17 PM
 #3

What do you think would be the most cost effective way to generate a higher number of Mkeys/s?

1. Optimize software used to generate the vanity address
2. Use GPU rather than CPU

And what's the difference between KVM or OpenVZ VPS's? My impression is that KVM is superior but why?

OpenVZ have lower overhead which leads to higher RAW performance, but AFAIK KVM have more advance features & support to various kernel/OS

LoyceV
Legendary
*
Online Online

Activity: 1764
Merit: 5783


Most of loyce.club works again


View Profile WWW
December 22, 2019, 07:30:23 PM
Merited by Heisenberg_Hunter (1)
 #4

I rent a Ubuntu VPS with 6 cores. This is not a dedicated server. Currently I get a speed of about 2.8Mkeys/s.
If you continuously use full CPU on a shared server, chances are your account will be removed at some point.

Have you read Vanitygen: Vanity bitcoin address generator/miner [v0.22] yet? You're going to want to use oclvanitygen, running on a GPU. My old laptop does 9 Mkeys/s on it's GPU, but I've seen claims of hundreds of Mkeys/s on modern GPUs.
It's probably going to be difficult to find a VPS with decent GPU.

There's also VanitySearch (Yet another address prefix finder), which is said to be faster, but I haven't tested it by myself yet.

TL;DR: you're going to want to use a GPU. Or, if you're looking for only one or a few specific address prefixes, you could use split key so someone with a decent GPU can generate it for you. If you do this right, it is completely secure, and hiring a few days GPU-time from someone might be cheaper than running vanitygen on CPU for months.

loginov
Jr. Member
*
Offline Offline

Activity: 36
Merit: 14


View Profile
December 22, 2019, 09:31:19 PM
 #5

I rent a Ubuntu VPS with 6 cores. This is not a dedicated server. Currently I get a speed of about 2.8Mkeys/s.
If you continuously use full CPU on a shared server, chances are your account will be removed at some point.

There's also VanitySearch (Yet another address prefix finder), which is said to be faster, but I haven't tested it by myself yet.

TL;DR: you're going to want to use a GPU. Or, if you're looking for only one or a few specific address prefixes, you could use split key so someone with a decent GPU can generate it for you. If you do this right, it is completely secure, and hiring a few days GPU-time from someone might be cheaper than running vanitygen on CPU for months.

Thank you for your comments.

I am currently using the VanitySearch program. I've tried four such programs and this is the most effective.

Would, in your opinion, using a dedicated CPU VPS be viable? Or is it more "any kind of CPU is a bad idea."

Are there any GPU based VPS that you can recommend? I have looked around and they seem highly expensive.

Would some kind of EC2 type thing work?
LoyceMobile
Full Member
***
Offline Offline

Activity: 663
Merit: 140


Hover mouse above my sig to find many useful links


View Profile WWW
December 22, 2019, 09:39:57 PM
 #6

Can you share what your trying to find?

A cpu in my experience is about 20 times slower than a gpu. So that's the price difference that makes a gpu server worth it. I've looked for them a while back, but never tested it on a server.

loginov
Jr. Member
*
Offline Offline

Activity: 36
Merit: 14


View Profile
December 23, 2019, 09:38:35 PM
Merited by DarkStar_ (5), Heisenberg_Hunter (2), ETFbitcoin (1)
 #7

Can you share what your trying to find?

A cpu in my experience is about 20 times slower than a gpu. So that's the price difference that makes a gpu server worth it. I've looked for them a while back, but never tested it on a server.

It is more of a research / curiosity question than trying to find something specific.

I was looking at the difficulty in generating vanity addresses with specific prefixes.

For example (at ~4Mkeys/s)

5 characters case sensitive - starting with a lower case (15,318,045,009 difficulty) - 50% takes about 40 minutes.
6 characters case sensitive - starting with a lower case (888,446,610,539 difficulty) - 50% takes about 36 hours.

So I was simply speculating as to how many Mkeys/s one could generate for a reasonable price. The VPS I use with 6 cores costs 35 euros/month.

Of course, a GPU will cost more - but how many times more? The cheapest GPU (35 cents/h) here (https://gpurental.com/) costs $250/month. The most expensive ($1.35/hour) costs $920/month. However, I don't have the experience to know what the specifications of the GPU actually mean.

Here is a cheaper example at $99/month (https://www.gpuserversrental.com/) using 6 x GTX 1050 2GB.

So they are not hugely expensive though the price ranges far more so than for a CPU-based VPS.

LoyceV
Legendary
*
Online Online

Activity: 1764
Merit: 5783


Most of loyce.club works again


View Profile WWW
December 23, 2019, 09:58:20 PM
 #8

The VPS I use with 6 cores costs 35 euros/month.
Renting is probably very inefficient: you can buy a GPU that gives you 10 times more performance for 200 euro:
my GTX 1060 3 GB searches through ~40Mkey/sec.

Of course, a GPU will cost more - but how many times more? The cheapest GPU (35 cents/h) here (https://gpurental.com/) costs $250/month. The most expensive ($1.35/hour) costs $920/month. However, I don't have the experience to know what the specifications of the GPU actually mean.
I can't find performance numbers for oclvanitygen on the GPUs in these servers, but I kinda expect it to be cheaper per Mkey/s than CPU-searches.

Note: You should probably still use split-key generation so you don't have to trust the VPS with your private keys.

DarkStar_
Legendary
*
Offline Offline

Activity: 1610
Merit: 2229


https://bitcoin.watfordfc.com


View Profile WWW
December 24, 2019, 04:45:41 AM
Last edit: December 24, 2019, 04:59:25 AM by DarkStar_
Merited by LoyceV (4), ETFbitcoin (1), Heisenberg_Hunter (1)
 #9

Renting is probably very inefficient: you can buy a GPU that gives you 10 times more performance for 200 euro:
my GTX 1060 3 GB searches through ~40Mkey/sec.

The 40Mkeys/sec figure is from oclvanitygen. Switching to VanitySearch brings that up to 320MKeys/sec.

Nvidia's 16XX and 20XX series are even better at generating keys. Based off of DaveF's crowdsourced list, a 1650 searches through 500MKeys/sec using VanitySearch for about 160 euros (and the 1650 Super is probably even better as it has the Turing architecture). That's about the half of the speed of my 1080Ti (900MKeys/sec) at about the fifth of the cost.

It is more of a research / curiosity question than trying to find something specific.
I was looking at the difficulty in generating vanity addresses with specific prefixes.
For example (at ~4Mkeys/s)

5 characters case sensitive - starting with a lower case (15,318,045,009 difficulty) - 50% takes about 40 minutes.
6 characters case sensitive - starting with a lower case (888,446,610,539 difficulty) - 50% takes about 36 hours.

So I was simply speculating as to how many Mkeys/s one could generate for a reasonable price. The VPS I use with 6 cores costs 35 euros/month.

Of course, a GPU will cost more - but how many times more? The cheapest GPU (35 cents/h) here (https://gpurental.com/) costs $250/month. The most expensive ($1.35/hour) costs $920/month. However, I don't have the experience to know what the specifications of the GPU actually mean.

Here is a cheaper example at $99/month (https://www.gpuserversrental.com/) using 6 x GTX 1050 2GB.

So they are not hugely expensive though the price ranges far more so than for a CPU-based VPS.


Are you going to have to run at 24/7? On gpurental.com, I see a 7x1080ti rig for $1.35 USD/hour. That's 6.3GKeys/sec. 35 Euro gets you about 28.5 hours, for a total of 646,380 GKeys generated. Your CPU based VPS, assuming best case at 4.5MKeys/sec running for 30 days, gets you 11,664 GKeys generated. At the same price, using the 7x1080Ti rig, you get about 60 times the keys generated.

Note: Generating split key does decrease speeds. I think renting the 7x1080ti rig is much better regardless though. If you can find someone offering the 16XX or 20XX series, it will probably be even better performance/$.

arulbero
Legendary
*
Offline Offline

Activity: 1396
Merit: 1510


View Profile
December 24, 2019, 04:30:14 PM
Last edit: December 24, 2019, 04:43:04 PM by arulbero
Merited by DarkStar_ (5), ETFbitcoin (3), pooya87 (2), Heisenberg_Hunter (2), fillippone (2)
 #10

Note: Generating split key does decrease speeds. If you can find someone offering the 16XX or 20XX series, it will probably be even better performance/$.

A trivial way to outsource these computations without decreasing speed is replacing G (the generator of the curve):

https://github.com/JeanLucPons/VanitySearch/blob/master/SECP256K1.cpp

Code:
// Generator point and order
G.x.SetBase16("79BE667EF9DCBBAC55A06295CE870B07029BFCDB2DCE28D959F2815B16F81798");
G.y.SetBase16("483ADA7726A3C4655DA4FBFC0E1108A8FD17B448A68554199C47D08FFB10D4B8");

Let's do an example. I want to find 1TryMe prefix. I don't have enough resource. B will do the work for me.

First I generate a private key k':
Code:
$ hexdump -n 32 -e '8/4 "%08X"' /dev/urandom
B0F73D115572691C22B4D7AC5266A1D488E607323AABB35AB2896BE2B5204C91

then I compute the corresponding public key G' = k'*G:
Code:
961b9c7b6e08355e6d25924022df6d15c7da7af05ba7bb50f5b8d78a46378f0f 9377f60a859415663417ea79ed6ee83db70ea77bad8e1ad05662c699f4beec1c

and I send only the public key G' to B.

B replaces G with G':

Code:
// Generator point and order
G.x.SetBase16("961b9c7b6e08355e6d25924022df6d15c7da7af05ba7bb50f5b8d78a46378f0f");
G.y.SetBase16("9377f60a859415663417ea79ed6ee83db70ea77bad8e1ad05662c699f4beec1c");

B compiles and runs VanitySearch:
Code:
./VanitySearch -gpu 1TryMe

Pub Addr: 1TryMemMqFG1SWFXJkdCyXm6gFhgc6iMH
Prv Addr: 5JkNnhUQfAJmQpWHv9r9g4YM1SKs4roT5N1okKgrLj1BcoNSYUE
Prv Key : 0x7ddea4bdd3d14030094ddf5aa416b7e979fe5cce58802c1d0a272c1b5f4455ab
Check   : 147homhkTC1xKQVvBjdiYB5Xw3tRg1n2RT
Check   : 1TryMemMqFG1SWFXJkdCyXm6gFhgc6iMH (comp)

and he returns the private (partial) key 0x7ddea4bdd3d14030094ddf5aa416b7e979fe5cce58802c1d0a272c1b5f4455ab
to me.
Important: partial_k*G' = public key  -> 1TryMemMqFG1SWFXJkdCyXm6gFhgc6iMH

but G' = k'*G  then partial_k * k' * G = public key -> t1TryMemMqFG1SWFXJkdCyXm6gFhgc6iMH

then the real private_key is   (partial_k * k') mod n  

Code:
python
>>> n = 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364141
>>> k = 0xB0F73D115572691C22B4D7AC5266A1D488E607323AABB35AB2896BE2B5204C91
>>> partial_k = 0x7ddea4bdd3d14030094ddf5aa416b7e979fe5cce58802c1d0a272c1b5f4455ab
>>>
>>> private_key = (partial_k * k) % n
>>> hex(private_key)
'0x7ad1451e53cfb77ccb6e15965fa2af303e762d3895b5508540deb5ff39e010f4'

0x7ad1451e53cfb77ccb6e15965fa2af303e762d3895b5508540deb5ff39e010f4.
loginov
Jr. Member
*
Offline Offline

Activity: 36
Merit: 14


View Profile
December 28, 2019, 09:18:57 PM
 #11

Quote
Are you going to have to run at 24/7? On gpurental.com, I see a 7x1080ti rig for $1.35 USD/hour. That's 6.3GKeys/sec. 35 Euro gets you about 28.5 hours, for a total of 646,380 GKeys generated. Your CPU based VPS, assuming best case at 4.5MKeys/sec running for 30 days, gets you 11,664 GKeys generated. At the same price, using the 7x1080Ti rig, you get about 60 times the keys generated.

Note: Generating split key does decrease speeds. I think renting the 7x1080ti rig is much better regardless though. If you can find someone offering the 16XX or 20XX series, it will probably be even better performance/$.

Thank you for the helpful information.

I see my conceptual error. I have been imagining renting a GPU per month as is the case for CPU VPS's. Whereas, one is buying per hour and expecting very quick responses to queries (e.g. billions of keys/s) and thus not using  up very many hours.

Presumably GPU VPS's are the same to use as a CPU VPS e.g. the same Ubuntu OS. It's just that the hardware specs "behind the scenes" are different. Yes?
ranochigo
Legendary
*
Offline Offline

Activity: 1932
Merit: 1259

Back online:)


View Profile WWW
December 30, 2019, 10:03:58 AM
 #12

Presumably GPU VPS's are the same to use as a CPU VPS e.g. the same Ubuntu OS. It's just that the hardware specs "behind the scenes" are different. Yes?
For most of the services, the GPU is connected to the server itself. You would be using the server like as if its a normal computer with a GPU inside it. However, you must pass the flag to the programme. (ie. adding a -gpu in the argument).

LoyceV
Legendary
*
Online Online

Activity: 1764
Merit: 5783


Most of loyce.club works again


View Profile WWW
December 30, 2019, 10:22:54 AM
 #13

Presumably GPU VPS's are the same to use as a CPU VPS e.g. the same Ubuntu OS. It's just that the hardware specs "behind the scenes" are different. Yes?
It might be more difficult to get it to work with the correct drivers (that's how it was on my PC). I have no idea if it works out of the box on a VPS.

ETFbitcoin
Legendary
*
Offline Offline

Activity: 1918
Merit: 2202

Use SegWit and enjoy lower fees.


View Profile WWW
December 30, 2019, 10:44:27 AM
 #14

Presumably GPU VPS's are the same to use as a CPU VPS e.g. the same Ubuntu OS. It's just that the hardware specs "behind the scenes" are different. Yes?

That heavily depends on VPS provider you use, few might provide OS with installed tools (GPU Driver, CUDA Toolkit, ML library, etc.) so users can use the VPS immediately.
For example, GPU Rental mention they specifically create image for deep learning, which means GPU driver and it's toolkit/library should be installed already.

indigopsy
Newbie
*
Offline Offline

Activity: 4
Merit: 0


View Profile
January 02, 2020, 10:58:12 AM
 #15

I get around 72M keys/s  GPU mining

~8M with CPU
loginov
Jr. Member
*
Offline Offline

Activity: 36
Merit: 14


View Profile
January 10, 2020, 04:18:35 PM
 #16

I get around 72M keys/s  GPU mining

~8M with CPU

Thanks for the information.

Is this on your computer or on a VPS? If it's a VPS, please could you let me know the company you use either in this thread or in a PM. Thanks.
Pages: [1]
  Print  
 
Jump to:  

Sponsored by , a Bitcoin-accepting VPN.
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!