iPhone iOS 17.4 smart punctuation in password fields

When typing on iPhone with Smart Punctuation enabled (Settings -> General -> Keyboards):

  • Double quote (") might be converted to double prime symbol (ʺ)
  • Double hyphens (--) might be converted to a single long dash (—)
  • Ellipsis (...) might be converted to a ellipsis symbol (…)


Expected Behavior:

  • Smart Punctuation should be disabled for password fields to ensure characters are entered exactly as typed, maintaining compatibility with passwords created on devices without Smart Punctuation or in previous iOS versions.


Actual Behavior:

  • Smart Punctuation is now enabled for password fields for iPhone iOS 17.4 and later.


Impact:

  • Users with passwords containing these characters created before iOS 17.14 or on devices without Smart Punctuation are unable to log in due to character mismatch.
  • Users switching between devices with and without Smart Punctuation functionality might encounter login issues.


Steps to Reproduce:

  1. Enable Smart Punctuation on an iPhone.
  2. Use https://output.jsbin.com/cenagub to test output


Additional Information:

  • Reproduced on iPhone X iOS 17.4.1
  • Not reproducible on iPhone X iOS 16.1
  • Not reproducible on iPad 8th generation iOS 17.4.1


Does anyone know if this is expected behaviour from iOS 17.4 and later?

Are there any input attributes that will disable this feature?

iPhone 15

Posted on May 6, 2024 1:22 AM

Reply
6 replies

May 7, 2024 2:35 PM in response to Tom Gewecke

Thank you for your feedback and for looking into this. I have sent a ticket to Apple.


My team is experiencing this in the web browser, I have not tested it in a native app yet. I will look into if this is a isolated Safari/web issue.


Here are some screenshots of what we are experiencing, in case any others are having the same issues.

Screenshots are from using a Norwegian keyboard while typing characters: "--...

Note: Norwegian keyboard with smart punctuation converts "hello" into «hello».


iPhone Xs iOS 16.5


Smart punctuation converts characters in text field, but not password field. This is what we expect.


iPhone 14 Pro iOS 17.4.1


Smart punctuation converts characters in both text field and password field. This is causing us some issues.


Here is a image of a Norwegian keyboard.


We are getting reports from our customers who can't login to our web services on iPhone 17.4.1 because they have one of these characters in their password (most likely ").


Thank you for your help. I have contacted Apple and hopefully they can answer if this is a feature or a bug.

May 6, 2024 1:52 AM in response to Skarbo

I am unable to test it out on my devices, iPhone 12 Pro, 8 and SE 1st Gen because you have not provided where did you try to enter passcode? Which App or Web based services.


When typing passwords on an iPhone with Smart Punctuation enabled, certain characters might be automatically converted without the user being aware of it. This is done to enhance readability and consistency but doesn’t affect the actual characters being inputted for the password.


Generally, passwords do accept a wide range of special symbols for increased security. These symbols typically include:

  • Punctuation marks: !@#$%^&*()-_+={}[]|\;:"<>,./?
  • Mathematical symbols: ~ ^ = + - * /
  • Brackets: [] {}
  • Underscore: _

However, there are a few things to keep in mind:

  • Specific website/app limitations: While most systems accept a broad range of special characters, some websites or apps might have limitations. It's always best to check their specific password requirements.
  • Compatibility issues: Using very uncommon symbols or those not readily available on all keyboards might cause issues when logging in from different devices.


You may be aware that iOS Keyboard has following options, see the pic below


May 6, 2024 2:53 AM in response to SravanKrA

I looks like JSBIN page went down.


With smart punctuation enabled, using English (UK) keyboard and software keyboard: try typing ʺ character in the text field and in the password field.

Beyond text field I expect ʺ to be displayed in the disabled text field and "ʺ: U+201C" to be displayed in the textarea.

Beyond password field I expect " to be displayed in the disabled text field and "": U+22" to be displayed in the textarea.


I am currently experiencing that ʺ is displayed in the disabled text field beyond password field and "ʺ: U+201C" is displayed in the textarea.

This was not the case before iOS 17.4.


I will update the original post with updated link and better description.


Edit: Looks like i can't post link JSBIN example.


[Edited by Moderator]

May 6, 2024 5:22 AM in response to SravanKrA

SravanKrA wrote: When typing passwords on an iPhone with Smart Punctuation enabled, certain characters might be automatically converted without the user being aware of it. This is done to enhance readability and consistency but doesn’t affect the actual characters being inputted for the password.

That is erroneous. When "smart punctuation" converts characters, they are always inputted with different Unicode values. Passwords containing the unconverted versions will not work unless you turn it off, which is of course cumbersome.


iPhone iOS 17.4 smart punctuation in password fields

Welcome to Apple Support Community
A forum where Apple customers help each other with their products. Get started with your Apple ID.