airdcpp / airdcpp-windows

http://www.airdcpp.net
GNU General Public License v3.0
80 stars 19 forks source link

Add support for secure hub address when available in public hublists #67

Closed RoLex closed 1 year ago

Kcchouette commented 2 years ago

I don't really understand what mean the "Secure" attribute, you can instead put the "nmdcs" / "adcs" (you already do it for adcs in true) address directly in the "Address" attribute, can't you?

RoLex commented 2 years ago

@Kcchouette

Sure, but "secure" means generally TLS encrypted/secure address. Because a hub can have both secure and unsecure address. My hublist for example, always provides "secure" attribute in XML, and it always means that address in this field is secure/TLS encrypted, else "secure" is empty, meaning that hub doesn't have a secure address, or atleast hublist doesn't know about it yet.

I didn't choose word "secure" from the the air, I did actually look up how a secure/TLS encrypted address is normally called in different protocols, here is example for HTTPS: https://en.wikipedia.org/wiki/HTTPS (therefore "S" in the end of HTTPS or NMDCS).

Another thing why "secure" is separate from "address" - is because some clients don't support TLS at all, it would be a great mistake to set "address" to a secure/TLS encrypted address. Example is DC++ 0.870 and below. In next DC++ version I have already added support for secure connections between clients and hubs.

Do you agree? If you don't, sure, we can rename it to what ever you like. The point of this feature is to allow users to actually use the secure/TLS encrypted connection between client and the hub in the first place, hence all the anti P2P things going around at the ISP level.

maksis commented 2 years ago

Is this going to be implemented in DC++? If such attribute will be added, I'd rather call it "SecureAddress" or something else as "Secure" sounds like a boolean attribute.

RoLex commented 2 years ago

@maksis

I have committed a PR into DC++ with this feature, along with "secure" client to hub connection support for NMDC protocol.

We can rename it to anything you want, attribute name is the smallest problem here.

maksis commented 2 years ago

I have committed a PR into DC++ with this feature, along with "secure" client to hub connection support for NMDC protocol.

Do you have a link for this?

RoLex commented 2 years ago

https://github.com/RoLex/dcpp/commits/main

Kcchouette commented 2 years ago

Is this going to be implemented in DC++?

I think what maksis is going to waiting from you is doing a ticket to the official dcpp project / a PR to the official project and wait with their feedback about the change

Kcchouette commented 2 years ago

Screenshot from 2021-12-05 11-27-34

RoLex commented 2 years ago

Lol. Is Cologic blind or something? I opened a question on Launchpad/DC++ specificly for this issue, and provided complete update for TLS encrypted connections both on client to hub and client to client sides. Plus the secure address in XML. Everything is already complete and working.