As I understand the "bc1" abbreviation is about segwit compatabiltiy. My question is if both the public addresses are compatible with segwit, or if u have to use the "bc1" address to be? And Is there any reason for concern about functionality of the wallets in this case, i.e. funds sent to either one of the public addresses will show up in both bitcoin core and Electrum wallet?
There are actually
three address types available in this situation...
"Legacy" - These addresses start with a "1"
"P2SH-P2WPKH" - These addresses start with a "3"
"P2WPKH" - These addresses start with "bc1"
One private key can be "converted" to all 3 types... for instance, if we take the private key:
L2sf8SUpytobSSxSteJ7ixKt8pHXjm9FzavktpsN4Vy1t5M4Cos5
And import it into Electrum use the three different script types:
We get a wallet that has 3 different addresses... all generated from the same private key:
Bitcoin Core will automatically create all three addresses when you import a single private key... you don't need to specify the script type.
The "3"-type (P2SH-P2WPKH aka "Nested SegWit") and "bc1"-type addresses (P2WPKH aka "bech32" aka "Native SegWit") are "SegWit Compatible"... the only difference being that the "3"-type ones are compatible with older clients/services that don't recognise the "bc1" address format. This is becoming less and less of a problem as time goes on and wallet apps and online platforms upgrade to support bech32 addresses.
And Is there any reason for concern about functionality of the wallets in this case, i.e. funds sent to either one of the public addresses will show up in both bitcoin core and Electrum wallet?
Electrum and Bitcoin Core simply display what the blockchain records contain... so any changes to any of the addresses will be reflected in both the clients (and any other clients where the private keys have been imported).
Also note that even though all of these addresses are generated from the same private key, they are treated
as completely separate addresses by the bitcoin network. So, funds sent to the different addresses are effectively segregated from each other.
So, if you setup the wallets as I have shown above, and then sent 1 BTC to bc1q77avy7yp04j4sql8u7jq4qwyhrn2dushe6q0dd it will show in Electrum
and Bitcoin Core, but the addresses 1PasdfsTw1Mmm9E6bqcCz6dfAmsfMN4Q7f and 36T6zbUdRtR5bEEioUexWGKJRPxgwjkpAL will still show as "empty"...