I wanted to implement a one way wireless optical communication using arduino and LEDs but soon I had to choose sensors. LDRs are very slow and IR does not respond to visible light. My aim is to achieve 3-4 m of transmission so a sensitive sensor will be better for implementation.
Your design may benefit from Sunlight/lightbulb nulling.
Get that DC/50Hz photon energy out of the signal. Wire an integrator to VDD/2 bias, attach Rin to output of photodiode, pick feedback cap for 10Hz response so your 100KHz data does not get attenuated but DC is fully nulled. Connect OpAmp output to a Darlington in series with the photodiode; if the photodiode produces lots of DC, the Darlington will conduct the DC current to the opposite rail. You'll need a resistor to VDD/2 to convert the desired 100KHz current into a signal voltage. And place back-back diodes across the resistor.
Any LED also works as photodiode, for exactly the wavelengths it emits.
In your 50 – 100 kHz case, you can simply use any LED. They should be fast enough. This is totally low-tech! Reverse-bias your LED, add a AC-coupling capacitor, and filter appropriately to extract the signals you're interested in.
India is fairly well-equipped with distributors. Most international distributors also deliver there.