FAQ
Hi everyone,

For licensing purposes, according to me, the best and secure way is to
generate a unique key for the client's machine and provide a corresponding
license key for that key.
For this purpose, you can take help of the unique id of the client's
computer motherboard, BIOS and processor. When you get these IDs, you can
generate any key of your preferable format.

I'm newbie in Go so now I want to know is it possible to do this with Go
language?
What is your solution for this problem? (By helping C o ....)

please add your sample code too :)

Thanks

--
You received this message because you are subscribed to the Google Groups "golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Search Discussions

  • Hotei at May 13, 2013 at 2:30 am
    I think a simpler way would be to get the network interface id - also known
    as the MAC address. It's already guaranteed to be unique. A MB without a
    card or net-chip might present a problem but it would solve 99% of your
    needs I suspect. I don't have any code handy for that but it's probably
    lurking in the go std library.

    http://en.wikipedia.org/wiki/Mac_address
    On Sunday, May 12, 2013 5:54:56 PM UTC-4, Aboozar Ghafari wrote:

    Hi everyone,

    For licensing purposes, according to me, the best and secure way is to
    generate a unique key for the client's machine and provide a corresponding
    license key for that key.
    For this purpose, you can take help of the unique id of the client's
    computer motherboard, BIOS and processor. When you get these IDs, you can
    generate any key of your preferable format.

    I'm newbie in Go so now I want to know is it possible to do this with Go
    language?
    What is your solution for this problem? (By helping C o ....)

    please add your sample code too :)

    Thanks
    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/groups/opt_out.
  • Archos at May 13, 2013 at 6:51 am
    Other solution would be to get the serial number of the hard disk which
    would work in every case.

    El lunes, 13 de mayo de 2013 03:30:09 UTC+1, Hotei escribió:
    I think a simpler way would be to get the network interface id - also
    known as the MAC address. It's already guaranteed to be unique. A MB
    without a card or net-chip might present a problem but it would solve 99%
    of your needs I suspect. I don't have any code handy for that but it's
    probably lurking in the go std library.

    http://en.wikipedia.org/wiki/Mac_address
    On Sunday, May 12, 2013 5:54:56 PM UTC-4, Aboozar Ghafari wrote:

    Hi everyone,

    For licensing purposes, according to me, the best and secure way is to
    generate a unique key for the client's machine and provide a corresponding
    license key for that key.
    For this purpose, you can take help of the unique id of the client's
    computer motherboard, BIOS and processor. When you get these IDs, you can
    generate any key of your preferable format.

    I'm newbie in Go so now I want to know is it possible to do this with Go
    language?
    What is your solution for this problem? (By helping C o ....)

    please add your sample code too :)

    Thanks
    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/groups/opt_out.
  • Devon H. O'Dell at May 13, 2013 at 6:55 am
    Except for systems without a hard disk.

    2013/5/13 Archos <raul.san@sent.com>:
    Other solution would be to get the serial number of the hard disk which
    would work in every case.

    El lunes, 13 de mayo de 2013 03:30:09 UTC+1, Hotei escribió:
    I think a simpler way would be to get the network interface id - also
    known as the MAC address. It's already guaranteed to be unique. A MB
    without a card or net-chip might present a problem but it would solve 99% of
    your needs I suspect. I don't have any code handy for that but it's
    probably lurking in the go std library.

    http://en.wikipedia.org/wiki/Mac_address
    On Sunday, May 12, 2013 5:54:56 PM UTC-4, Aboozar Ghafari wrote:

    Hi everyone,

    For licensing purposes, according to me, the best and secure way is to
    generate a unique key for the client's machine and provide a corresponding
    license key for that key.
    For this purpose, you can take help of the unique id of the client's
    computer motherboard, BIOS and processor. When you get these IDs, you can
    generate any key of your preferable format.

    I'm newbie in Go so now I want to know is it possible to do this with Go
    language?
    What is your solution for this problem? (By helping C o ....)

    please add your sample code too :)

    Thanks
    --
    You received this message because you are subscribed to the Google Groups
    "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an
    email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/groups/opt_out.
    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/groups/opt_out.
  • Aboozar Ghafari at May 13, 2013 at 12:41 pm
    I know all of these ways but as i said I want a sample code. I've searched
    all go packages in golang.org, I've Googled too, ... but it's seems that
    there is no way to access to hardware information with GO libraries !!!

    for example this is a solution in C#:
    https://bitbucket.org/aboozar/csharp-fingerprint/src/7e09442705a55a5761de299e35aababbfbf13247/FingerPrint.cs?at=master

    I need a solution like this.

    Thanks everyone

    *Regards
    Aboozar Ghafari

    *

    On Mon, May 13, 2013 at 11:25 AM, Devon H. O'Dell wrote:

    Except for systems without a hard disk.

    2013/5/13 Archos <raul.san@sent.com>:
    Other solution would be to get the serial number of the hard disk which
    would work in every case.

    El lunes, 13 de mayo de 2013 03:30:09 UTC+1, Hotei escribió:
    I think a simpler way would be to get the network interface id - also
    known as the MAC address. It's already guaranteed to be unique. A MB
    without a card or net-chip might present a problem but it would solve
    99% of
    your needs I suspect. I don't have any code handy for that but it's
    probably lurking in the go std library.

    http://en.wikipedia.org/wiki/Mac_address
    On Sunday, May 12, 2013 5:54:56 PM UTC-4, Aboozar Ghafari wrote:

    Hi everyone,

    For licensing purposes, according to me, the best and secure way is to
    generate a unique key for the client's machine and provide a
    corresponding
    license key for that key.
    For this purpose, you can take help of the unique id of the client's
    computer motherboard, BIOS and processor. When you get these IDs, you
    can
    generate any key of your preferable format.

    I'm newbie in Go so now I want to know is it possible to do this with
    Go
    language?
    What is your solution for this problem? (By helping C o ....)

    please add your sample code too :)

    Thanks
    --
    You received this message because you are subscribed to the Google Groups
    "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an
    email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/groups/opt_out.
    --
    You received this message because you are subscribed to the Google Groups
    "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an
    email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/groups/opt_out.

    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/groups/opt_out.
  • Archos at May 13, 2013 at 12:58 pm
    The .Net platform comes with a library to get that information:
    http://msdn.microsoft.com/en-us/library/system.management.aspx

    If you want to get it in Go, somebody would have to create a library to
    wrap the systems calls of a system:

    + En windows is easy, e.g. this call gets info. from disks:
    http://msdn.microsoft.com/en-us/library/windows/desktop/aa364993%28v=vs.85%29.aspx

    + En Linux, to get info. from disk you could look for in '/dev/disk', and
    to get info. from motherboard you could get that info. in '/proc'

    Else, in general for unix systems, you could use a tool that already gets
    that information; then to use a tool to know which sytem calls do the first
    one; finally, to build the wraps in Go for those C system calls.

    El lunes, 13 de mayo de 2013 08:11:47 UTC+1, Aboozar Ghafari escribió:
    I know all of these ways but as i said I want a sample code. I've searched
    all go packages in golang.org, I've Googled too, ... but it's seems that
    there is no way to access to hardware information with GO libraries !!!

    for example this is a solution in C#:

    https://bitbucket.org/aboozar/csharp-fingerprint/src/7e09442705a55a5761de299e35aababbfbf13247/FingerPrint.cs?at=master

    I need a solution like this.

    Thanks everyone

    *Regards
    Aboozar Ghafari

    *


    On Mon, May 13, 2013 at 11:25 AM, Devon H. O'Dell <devon...@gmail.com<javascript:>
    wrote:
    Except for systems without a hard disk.

    2013/5/13 Archos <raul...@sent.com <javascript:>>:
    Other solution would be to get the serial number of the hard disk which
    would work in every case.

    El lunes, 13 de mayo de 2013 03:30:09 UTC+1, Hotei escribió:
    I think a simpler way would be to get the network interface id - also
    known as the MAC address. It's already guaranteed to be unique. A MB
    without a card or net-chip might present a problem but it would solve
    99% of
    your needs I suspect. I don't have any code handy for that but it's
    probably lurking in the go std library.

    http://en.wikipedia.org/wiki/Mac_address
    On Sunday, May 12, 2013 5:54:56 PM UTC-4, Aboozar Ghafari wrote:

    Hi everyone,

    For licensing purposes, according to me, the best and secure way is to
    generate a unique key for the client's machine and provide a
    corresponding
    license key for that key.
    For this purpose, you can take help of the unique id of the client's
    computer motherboard, BIOS and processor. When you get these IDs, you
    can
    generate any key of your preferable format.

    I'm newbie in Go so now I want to know is it possible to do this with
    Go
    language?
    What is your solution for this problem? (By helping C o ....)

    please add your sample code too :)

    Thanks
    --
    You received this message because you are subscribed to the Google Groups
    "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an
    email to golang-nuts...@googlegroups.com <javascript:>.
    For more options, visit https://groups.google.com/groups/opt_out.
    --
    You received this message because you are subscribed to the Google Groups
    "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an
    email to golang-nuts...@googlegroups.com <javascript:>.
    For more options, visit https://groups.google.com/groups/opt_out.

    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/groups/opt_out.
  • Vinnyapp at May 14, 2013 at 4:26 pm

    On Sunday, May 12, 2013 9:30:09 PM UTC-5, Hotei wrote:
    I think a simpler way would be to get the network interface id - also
    known as the MAC address. It's already guaranteed to be unique.

    MAC addresses are theoretically supposed to be unique. In practice, they
    rarely are. As other people have noted, it's trivial to clone or have the
    user set a custom MAC address. Factories aren't always the best at setting
    unique MAC addresses as well: I used to work in a datacenter, and we
    periodically found networking cards - newly built from the factory - that
    shared MAC addresses. Any network admin of a sufficiently large network
    (when I say large, I mean datacenter/big university/etc) has a good chance
    of running into the same issue.

    The best way is to to pull all the system properties you can find, SHA1
    them together, and use that as your identifier. Even then, a VM can easily
    replicate everything and generate the same hash.

    On Monday, May 13, 2013 2:11:47 AM UTC-5, Aboozar Ghafari wrote:

    I know all of these ways but as i said I want a sample code. I've searched
    all go packages in golang.org, I've Googled too, ... but it's seems that
    there is no way to access to hardware information with GO libraries !!!
    Write a wrapper from Go to C. Here's some sample code for that:
    https://groups.google.com/forum/?fromgroups=#!topic/golang-nuts/q38cc9gimcQ

    -Vinny P


















    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/groups/opt_out.
  • Hotei at May 13, 2013 at 12:34 pm
    Are you sure HD serial numbers are guaranteed to be unique among different
    vendors and over time? I've looked at a fair number of them over the years
    and I've seen a huge variation in what vendors use for SNs.
    On Monday, May 13, 2013 2:51:06 AM UTC-4, Archos wrote:

    Other solution would be to get the serial number of the hard disk which
    would work in every case.

    El lunes, 13 de mayo de 2013 03:30:09 UTC+1, Hotei escribió:
    I think a simpler way would be to get the network interface id - also
    known as the MAC address. It's already guaranteed to be unique. A MB
    without a card or net-chip might present a problem but it would solve 99%
    of your needs I suspect. I don't have any code handy for that but it's
    probably lurking in the go std library.

    http://en.wikipedia.org/wiki/Mac_address
    On Sunday, May 12, 2013 5:54:56 PM UTC-4, Aboozar Ghafari wrote:

    Hi everyone,

    For licensing purposes, according to me, the best and secure way is to
    generate a unique key for the client's machine and provide a corresponding
    license key for that key.
    For this purpose, you can take help of the unique id of the client's
    computer motherboard, BIOS and processor. When you get these IDs, you can
    generate any key of your preferable format.

    I'm newbie in Go so now I want to know is it possible to do this with Go
    language?
    What is your solution for this problem? (By helping C o ....)

    please add your sample code too :)

    Thanks
    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/groups/opt_out.
  • Aram Hăvărneanu at May 13, 2013 at 12:40 pm
    Hardware fingerprints are useless today in the age of virtual machines.

    --
    Aram Hăvărneanu

    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/groups/opt_out.
  • Aboozar Ghafari at May 13, 2013 at 12:52 pm
    Virtual machine is not a problem at all.
    If you make a real fingerprint for computer in a good algorithm then every
    virtual machine on a same hardware had to get a new license too.


    On Monday, May 13, 2013 5:08:03 PM UTC+4:30, Aram Hăvărneanu wrote:

    Hardware fingerprints are useless today in the age of virtual machines.

    --
    Aram Hăvărneanu
    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/groups/opt_out.
  • Aboozar Ghafari at May 13, 2013 at 12:57 pm
    For example : Every Normal virtual machine has different mac address, disk
    Id and different VGA card from its Host.
    On Monday, May 13, 2013 5:08:03 PM UTC+4:30, Aram Hăvărneanu wrote:

    Hardware fingerprints are useless today in the age of virtual machines.

    --
    Aram Hăvărneanu
    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/groups/opt_out.
  • Aram Hăvărneanu at May 13, 2013 at 1:22 pm

    For example : Every Normal virtual machine has different mac address, disk
    Id and different VGA card from its Host.
    You have misunderstood me. Yes, every virtual machine has a different
    fingerprint by default, but it's trivial to change this fingerprint to
    whatever else. It's a number in a text file.

    --
    Aram Hăvărneanu

    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/groups/opt_out.
  • Hotei at May 13, 2013 at 6:59 pm
    Aram,
    Perhaps the problem original poster is trying to solve is not to keep all
    people from cheating, but to encourage basically honest people to pay him
    for his product. The two problems are similar but not identical. The
    first problem is in my opinion, unsolvable. The second problem, well it's
    not trivial but he seems to have a start in the right general direction.
    On Monday, May 13, 2013 9:21:35 AM UTC-4, Aram Hăvărneanu wrote:

    For example : Every Normal virtual machine has different mac address, disk
    Id and different VGA card from its Host.
    You have misunderstood me. Yes, every virtual machine has a different
    fingerprint by default, but it's trivial to change this fingerprint to
    whatever else. It's a number in a text file.

    --
    Aram Hăvărneanu
    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/groups/opt_out.
  • Jan Mercl at May 13, 2013 at 7:09 pm
    DRM is the most ineffective way how to secure any revenue.

    Don't believe me, try it for yourself ;-)

    -j

    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/groups/opt_out.
  • Gerard at May 14, 2013 at 2:04 pm
    Google supports DRM in HTML5. See
    http://www.defectivebydesign.org/no-drm-in-html5

    Personally I am against it btw.

    Op maandag 13 mei 2013 21:09:34 UTC+2 schreef Jan Mercl het volgende:
    DRM is the most ineffective way how to secure any revenue.

    Don't believe me, try it for yourself ;-)

    -j
    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/groups/opt_out.
  • Archos at May 14, 2013 at 4:38 pm
    Also Microsoft but there are many people who are against it.

    The solution is very simple and individual. I stopped using Chromium and I
    hope that Mozilla is againt DRM on HTML; at least, I hope that they don't
    implement it in Firefox.

    El martes, 14 de mayo de 2013 15:03:16 UTC+1, Gerard escribió:
    Google supports DRM in HTML5. See
    http://www.defectivebydesign.org/no-drm-in-html5

    Personally I am against it btw.

    Op maandag 13 mei 2013 21:09:34 UTC+2 schreef Jan Mercl het volgende:
    DRM is the most ineffective way how to secure any revenue.

    Don't believe me, try it for yourself ;-)

    -j
    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/groups/opt_out.
  • Gerard at May 14, 2013 at 4:54 pm
    Archos, that's not what I meant. Jan said that DRM is an ineffective way to
    secure any revenue. However Google supports it in HTML5 (probably because
    youtube). So they believe it is effective.

    Op dinsdag 14 mei 2013 18:38:06 UTC+2 schreef Archos het volgende:
    Also Microsoft but there are many people who are against it.

    The solution is very simple and individual. I stopped using Chromium and I
    hope that Mozilla is againt DRM on HTML; at least, I hope that they don't
    implement it in Firefox.

    El martes, 14 de mayo de 2013 15:03:16 UTC+1, Gerard escribió:
    Google supports DRM in HTML5. See
    http://www.defectivebydesign.org/no-drm-in-html5

    Personally I am against it btw.

    Op maandag 13 mei 2013 21:09:34 UTC+2 schreef Jan Mercl het volgende:
    DRM is the most ineffective way how to secure any revenue.

    Don't believe me, try it for yourself ;-)

    -j
    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/groups/opt_out.
  • Aram Hăvărneanu at May 14, 2013 at 1:46 pm

    Perhaps the problem original poster is trying to solve is not to keep all
    people from cheating, but to encourage basically honest people to pay him
    for his product.
    Honest people pay without any "encouragement".

    --
    Aram Hăvărneanu

    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/groups/opt_out.
  • Aboozar Ghafari at May 13, 2013 at 12:54 pm
    I want to use combination of different values like I did in C# before.

    for example:

    //BIOS Identifier private static string biosId() { return identifier("Win32_BIOS", "Manufacturer") + identifier("Win32_BIOS", "SMBIOSBIOSVersion") + identifier("Win32_BIOS", "IdentificationCode") + identifier("Win32_BIOS", "SerialNumber") + identifier("Win32_BIOS", "ReleaseDate") + identifier("Win32_BIOS", "Version"); } //Main physical hard drive ID private static string diskId() { return identifier("Win32_DiskDrive", "Model") + identifier("Win32_DiskDrive", "Manufacturer") + identifier("Win32_DiskDrive", "Signature") + identifier("Win32_DiskDrive", "TotalHeads"); } //Motherboard ID private static string baseId() { return identifier("Win32_BaseBoard", "Model") + identifier("Win32_BaseBoard", "Manufacturer") + identifier("Win32_BaseBoard", "Name") + identifier("Win32_BaseBoard", "SerialNumber"); } //Primary video controller ID private static string videoId() { return identifier("Win32_VideoController", "DriverVersion") + identifier("Win32_VideoController", "Name"); } //First enabled network card ID private static string macId() { return identifier("Win32_NetworkAdapterConfiguration", "MACAddress", "IPEnabled"); }

    On Monday, May 13, 2013 5:02:54 PM UTC+4:30, Hotei wrote:

    Are you sure HD serial numbers are guaranteed to be unique among different
    vendors and over time? I've looked at a fair number of them over the years
    and I've seen a huge variation in what vendors use for SNs.
    On Monday, May 13, 2013 2:51:06 AM UTC-4, Archos wrote:

    Other solution would be to get the serial number of the hard disk which
    would work in every case.

    El lunes, 13 de mayo de 2013 03:30:09 UTC+1, Hotei escribió:
    I think a simpler way would be to get the network interface id - also
    known as the MAC address. It's already guaranteed to be unique. A MB
    without a card or net-chip might present a problem but it would solve 99%
    of your needs I suspect. I don't have any code handy for that but it's
    probably lurking in the go std library.

    http://en.wikipedia.org/wiki/Mac_address
    On Sunday, May 12, 2013 5:54:56 PM UTC-4, Aboozar Ghafari wrote:

    Hi everyone,

    For licensing purposes, according to me, the best and secure way is to
    generate a unique key for the client's machine and provide a corresponding
    license key for that key.
    For this purpose, you can take help of the unique id of the client's
    computer motherboard, BIOS and processor. When you get these IDs, you can
    generate any key of your preferable format.

    I'm newbie in Go so now I want to know is it possible to do this with
    Go language?
    What is your solution for this problem? (By helping C o ....)

    please add your sample code too :)

    Thanks
    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/groups/opt_out.
  • Archos at May 13, 2013 at 1:06 pm
    The truth is that I'm not really sure but if I were a hardware seller I would
    ensure that each serial number was unique; also doing agreements with other
    companies to have different values.

    El lunes, 13 de mayo de 2013 13:32:54 UTC+1, Hotei escribió:
    Are you sure HD serial numbers are guaranteed to be unique among different
    vendors and over time? I've looked at a fair number of them over the years
    and I've seen a huge variation in what vendors use for SNs.
    On Monday, May 13, 2013 2:51:06 AM UTC-4, Archos wrote:

    Other solution would be to get the serial number of the hard disk which
    would work in every case.

    El lunes, 13 de mayo de 2013 03:30:09 UTC+1, Hotei escribió:
    I think a simpler way would be to get the network interface id - also
    known as the MAC address. It's already guaranteed to be unique. A MB
    without a card or net-chip might present a problem but it would solve 99%
    of your needs I suspect. I don't have any code handy for that but it's
    probably lurking in the go std library.

    http://en.wikipedia.org/wiki/Mac_address
    On Sunday, May 12, 2013 5:54:56 PM UTC-4, Aboozar Ghafari wrote:

    Hi everyone,

    For licensing purposes, according to me, the best and secure way is to
    generate a unique key for the client's machine and provide a corresponding
    license key for that key.
    For this purpose, you can take help of the unique id of the client's
    computer motherboard, BIOS and processor. When you get these IDs, you can
    generate any key of your preferable format.

    I'm newbie in Go so now I want to know is it possible to do this with
    Go language?
    What is your solution for this problem? (By helping C o ....)

    please add your sample code too :)

    Thanks
    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/groups/opt_out.
  • Dlin at May 13, 2013 at 3:53 am
    Please write the function in C at first.
    There are two possible methods:

    1. use CGO to call your C function(not c++) (if you C contains asm, I
    guess this is the only possible method)
       * http://golang.org/cmd/cgo/
       * http://blog.golang.org/2011/03/c-go-cgo.html
    2. convert your C code into pure Go code by calling unsafe package.(eg.
    syscall...)

    BTW, if you successful, could you share your code on github Go package easy
    to import?
    On Monday, May 13, 2013 5:54:56 AM UTC+8, Aboozar Ghafari wrote:

    Hi everyone,

    For licensing purposes, according to me, the best and secure way is to
    generate a unique key for the client's machine and provide a corresponding
    license key for that key.
    For this purpose, you can take help of the unique id of the client's
    computer motherboard, BIOS and processor. When you get these IDs, you can
    generate any key of your preferable format.

    I'm newbie in Go so now I want to know is it possible to do this with Go
    language?
    What is your solution for this problem? (By helping C o ....)

    please add your sample code too :)

    Thanks
    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/groups/opt_out.

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
groupgolang-nuts @
categoriesgo
postedMay 13, '13 at 12:35a
activeMay 14, '13 at 4:54p
posts21
users9
websitegolang.org

People

Translate

site design / logo © 2021 Grokbase