Project

General

Profile

Actions

Bug #955

open

I2P is not recognized as a valid top-level domain by Android's Patterns.WEB_URL

Added by k k about 1 year ago. Updated about 1 year ago.

Status:
In Progress
Priority:
3.x
Start date:
01/10/2023
Due date:
% Done:

0%

Estimated time:

Description

Proxy - i2p, Tor

Tor - If a web address is w/o prefix 'http:// or https://' PB redirects automatically to 'https://'.
It should remain 'http://'.

i2p -
1. Using i2pd with 'I2p proxy', PB shows the alert that there is no i2p app. i2pd is the i2p client which fully implements all I2P APIs.
https://geti2p.net/en/about/alternative-clients

I recommend that i2pd should be recognised by PB as i2p app.

2. Using 'I2p proxy' or 'custom proxy' as advised here https://www.stoutner.com/proxy-syntax/, if you use a web address w/o prefix 'http:// or https://' PB tries to connect with a search engine via i2p outproxy. PB should try to connect with the provided address using default prefix 'http://'

Actions #1

Updated by Soren Stoutner about 1 year ago

  • Subject changed from Proxy - i2p, Tor to Consider defaulting to http:// instead of https://
  • Status changed from New to Feedback
  • Assignee set to Soren Stoutner

Please file a separate bug report for each subject.

By choice, Privacy Browser only detects the official Orbot and I2P apps. I think it is highly unlikely I would try to detect all the many third-party solutions. That is what the custom entry is for. But if you would like to discuss it further I suggest you create a separate issue or do a search for one of the existing places on Redmine where it has been discussed, like #895, and add your comments there.

Regarding the defaulting to http:// instead of https://, for security and privacy reasons, Privacy Browser will always default to https://. If a user needs or wants http://, they should always have to type it manually as a reminder that it is not secure. Tor users like to assert that https:// isn't needed with .onion addresses because the encryption is handled by the Tor protocol. But Tor has a long history of being hacked and having problems with their protocols and the implementations thereof, so I don't trust that assertion. I would much rather trust https:// encryption that terminates in the browser than solely rely on Tor's encryption.

Actions #2

Updated by Soren Stoutner about 1 year ago

  • Subject changed from Consider defaulting to http:// instead of https:// to Problems with searching instead of loading a URL

Regarding Privacy Browser searching instead of loading a URL when using I2P, I cannot replicate that problem. Can you please post an example URL that causes the problem for you?

Before doing so, you might consider reading over #938 first, to make sure that you are actually entering a URL instead of something that is not a URL.

Actions #3

Updated by Kooh2 Kooh2 about 1 year ago

- I have "Search custom URL" - 4n53nafyi77iplnbrpmxnp3x4exbswwxigujaxy3b37fvr7bvlopxeyd.onion/search?q= - My regular web browsing is mostly over Tor proxy.

- I change Proxy to I2P

- I try to open a web address - zzz.i2p

- PP gives the output- Proxy error: Outproxy failure
Host 4n53nafyi77iplnbrpmxnp3x4exbswwxigujaxy3b37fvr7bvlopxeyd.onion not inside I2P network, but outproxy is not enabled

- The address: http://4n53nafyi77iplnbrpmxnp3x4exbswwxigujaxy3b37fvr7bvlopxeyd.onion/search?q=zzz.i2p

As I wrote PP can't recognise the address zzz.i2p and tries to find a query via search engine.

Actions #4

Updated by Kooh2 Kooh2 about 1 year ago

If I use the address with a prefix "http://" PP loads the site correctly.

Actions #5

Updated by Kooh2 Kooh2 about 1 year ago

PP == Privacy Browser ;)

Actions #6

Updated by Soren Stoutner about 1 year ago

  • Subject changed from Problems with searching instead of loading a URL to I2P is not recognized as a valid top-level domain by Android's Patterns.WEB_URL
  • Status changed from Feedback to In Progress

Privacy Browser uses Android's Patterns.WEB_URL to check for text that is not a URL to see if it is similar enough to a URL to be modified to become a URL instead of performing a search.

https://developer.android.com/reference/android/util/Patterns#WEB_URL

`zzz.i2p` is, of course, not a URL because it does not contain a scheme.

https://en.wikipedia.org/wiki/URL

It looks like Android's Patterns.WEB_URL isn't smart enough to determine that partial URLs that end in `i2p` could be converted to a URL if prepended by a scheme.

I have created an upstream bug asking Google to fix the problem.

https://issuetracker.google.com/issues/266246557

Actions #7

Updated by Kooh2 Kooh2 about 1 year ago

Thank you.

Actions

Also available in: Atom PDF