Functional equation (N to N) Find all $f : \mathbb{N} \to \mathbb{N}$ which satisfy the equation:
$f(d_1)f(d_2)...f(d_n)=N$
Where $N$ is a natural number and $d_i, 1 \leq i \leq n$ are all of the divisors of $N$.

Here is my attempt.
Any $N$ will have a prime power factorisation, so its divisors are all powers of primes, or a product of prime powers.  
Consider $N$ = $p^2$ with $p$ prime.  Taking $f(p) = p$ and $f(1) = 1$ as given, we have $f(1)f(p)f(p^2)=p^2$, and so $f(p^2) = p$.  Generalising, $f(p^k)=p$, for any positive integer $k$.  
Now when we have more than one prime in the prime power factorisation of $N$, and at least one of those primes has multiplicity greater than $1$, there will be divisors of $N$ which are not prime powers (composite numbers with more than one prime factor).  e.g. $pq$ divides $p^2q^2$.  But $f$ acting on these divisors must give $1$, since otherwise there is no way that $f(c_1)f(c_2)$ can equal $1$, where $c_1$ and $c_2$ are composite numbers, each with more than one prime factor.  To see this, recall that the $f$ outputs natural numbers, and $1 \times 1 = 1$ is the only way to obtain $1$ from the product of two natural numbers.   
Summarising: $f(1) = 1$, $f(p^k) = p$, for $p$ prime and any positive integer $k$.  For all natural numbers $l$ with more than one prime factor, $f(l) = 1$.
