It's the value of the moduli. It is the biggest number in the curve secp256k1 that bitcoin uses.
=2^256-2^32-2^9-2^8-2^7-2^6-2^4-1
If your generated private key is bigger than that, then you have to subtract that number from your generated key as many times as necessary, until it becomes smaller than that number.
The security of bitcoin depends on big numbers. That is the reason why the moduli has to be so big.
https://en.bitcoin.it/wiki/Secp256k1
for example :
Here is my private key ="9c63e8e2f6574c197c0626bad843eb47104adf3f01f2901aad1258936feb007e"
var newprimarykey = (9c63e8e2f6574c197c0626bad843eb47104adf3f01f2901aad1258936feb007e * 36453278) mod 115792089237316195423570985008687907853269984665640564039457584007908834671663 );
console.log('newkey = ',newprimarykey);
If i am executing this one then it'll give error :
var t1 = (9c63e8e2f6574c197c0626bad843eb47104adf3f01f2901aad1258936feb007e * 36453278);
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
SyntaxError: Unexpected identifier
at exports.runInThisContext (vm.js:53:16)
at Module._compile (module.js:373:25)
at Object.Module._extensions..js (module.js:416:10)
at Module.load (module.js:343:32)
at Function.Module._load (module.js:300:12)
at Function.Module.runMain (module.js:441:10)
at startup (node.js:140:18)
at node.js:1043:3
I'm not a JS dev, but... you do know you have to convert the hex to decimal, right? The private key is a hex representation of a really large number. And I assume JS has some kind of BigInteger library or something for large numbers, which you would need to be using.
So you need to convert your private key from hex to decimal, THEN multiply it, and THEN take the result mod that other large number.
That said, you probably should not do any of that. Instead, you should use the private key as a BIP 32 seed, and use a BIP 32 HD master key to generate your keys. That's the best way to generate a bunch of addresses from one master private key.