Superfly-Inc / ShowKeyPlus

Windows product key finder and validation checker
MIT License
930 stars 162 forks source link

Phone home feature ? #7

Closed imranget closed 7 years ago

imranget commented 7 years ago

I noticed that the showkeyplus on github does not have any source code listed but that is not the main issue here. I also noticed that it has a phone home feature where it is sending encrypted data back over https traffic, I am a little concerned by windows key got sent back to a collection server, Could you please clarify what data is being sent back ?

Superfly-Inc commented 7 years ago

Hi imranget

Your concern is mirrored by many and valid given the nature of this application.

The only info it gets from external source is the version and link in the xml file included with the the original release. No info is being posted.

Here's the code

private List CheckVersion(string version) { Version newVersion = null; string url = ""; List xmldata = new List(); XmlTextReader reader = null; try { string xmlURL = "https://github.com/Superfly-Inc/ShowKeyPlus/releases/download/ShowkeyPlus/Config.xml"; reader = new XmlTextReader(xmlURL); reader.MoveToContent(); string elementName = "";

            if ((reader.NodeType == XmlNodeType.Element) &&
                (reader.Name == "configuration"))
            {
                while (reader.Read())
                {
                    if (reader.NodeType == XmlNodeType.Element)
                        elementName = reader.Name;
                    else
                    {
                        if ((reader.NodeType == XmlNodeType.Text) && (reader.HasValue))
                        {
                            switch (elementName)
                            {
                                case "version":
                                    newVersion = new Version(reader.Value);
                                    break;
                                case "url":
                                    url = reader.Value;
                                    break;
                            }
                        }
                    }
                }
            }
            xmldata.Add(newVersion.ToString());

            xmldata.Add(url);
            return xmldata;
        }
        catch (Exception ex)
        {
         //    if(MetroMessageBox.Show(this,ex.Message, "Error getting version", MessageBoxButtons.OK)!= DialogResult.None) frmKeyInfo.ActiveForm.Opacity = 1.0;
            return null;
        }
        finally
        {
            if (reader.HasValue) reader.Close();
        }
    }

private void bgwVersion_RunWorkerCompleted(object sender, System.ComponentModel.RunWorkerCompletedEventArgs e) { try { if (e.Result != null) { List newVersion = e.Result as List; string version = GetProductVersion(); if (newVersion != null && version.CompareTo(newVersion[0]) < 0) { if (MetroMessageBox.Show(frmKeyInfo.ActiveForm, "\n\n Would you like to download version " + newVersion[0] + " now?", "A newer version of ShowKeyPlus is available", MessageBoxButtons.YesNo, MessageBoxIcon.Information) == DialogResult.Yes) { Process.Start(newVersion[1]); } frmKeyInfo.ActiveForm.Opacity = 1.0; } } } catch (Exception) { // return; //MessageBox.Show(ex.Message); }